先构建一个secret文件
arangodb create jwt-secret --secret=arangodb.secretdocker-compose.yml
version: "3"
services:
  agency:
    image: arangodb:latest
    container_name: arango-agency
    volumes:
      - ./arangodb.secret:/etc/arangodb.secret
      - ./cluster/a1:/var/lib/arangodb3
      - ./cluster/a1apps:/var/lib/arangodb3-apps
    command: arangod --server.jwt-secret-keyfile=/etc/arangodb.secret --server.endpoint tcp://0.0.0.0:8531 --agency.my-address tcp://agency:8531 --server.authentication true --agency.activate true --agency.size 1 --agency.endpoint tcp://agency:8531 --agency.supervision true --cluster.require-persisted-id true
  coordinator1:
    image: arangodb:latest
    container_name: arango-coordinator1
    volumes:
      - ./arangodb.secret:/etc/arangodb.secret
      - ./cluster/c1:/var/lib/arangodb3
      - ./cluster/c1apps:/var/lib/arangodb3-apps
    command: arangod --server.jwt-secret-keyfile=/etc/arangodb.secret --server.authentication=true --server.endpoint tcp://0.0.0.0:8529 --cluster.my-address tcp://coordinator1:8529  --cluster.my-role COORDINATOR --cluster.agency-endpoint tcp://agency:8531  --cluster.require-persisted-id true
    ports:
      - "8000:8529"
    depends_on:
      - agency
  coordinator2:
    image: arangodb:latest
    container_name: arango-coordinator2
    volumes:
      - ./arangodb.secret:/etc/arangodb.secret
      - ./cluster/c2:/var/lib/arangodb3
      - ./cluster/c2apps:/var/lib/arangodb3-apps
    command: arangod --server.jwt-secret-keyfile=/etc/arangodb.secret --server.authentication=true --server.endpoint tcp://0.0.0.0:8529 --cluster.my-address tcp://coordinator2:8529 --cluster.my-role COORDINATOR --cluster.agency-endpoint tcp://agency:8531  --cluster.require-persisted-id true
    ports:
      - "8001:8529"
    depends_on:
      - agency
  db1:
    image: arangodb:latest
    container_name: arango-db1
    volumes:
      - ./arangodb.secret:/etc/arangodb.secret
      - ./cluster/db1:/var/lib/arangodb3
      - ./cluster/db1apps:/var/lib/arangodb3-apps
    command: arangod --server.jwt-secret-keyfile=/etc/arangodb.secret --server.endpoint tcp://0.0.0.0:8529 --cluster.my-address tcp://db1:8529 --cluster.my-role PRIMARY --cluster.agency-endpoint tcp://agency:8531  --cluster.require-persisted-id true
    depends_on:
      - agency
  db2:
    image: arangodb:latest
    container_name: arango-db2
    volumes:
      - ./arangodb.secret:/etc/arangodb.secret
      - ./cluster/db2:/var/lib/arangodb3
      - ./cluster/db2apps:/var/lib/arangodb3-apps
    command: arangod --server.jwt-secret-keyfile=/etc/arangodb.secret --server.endpoint tcp://0.0.0.0:8529 --cluster.my-address tcp://db2:8529 --cluster.my-role PRIMARY --cluster.agency-endpoint tcp://agency:8531  --cluster.require-persisted-id true
    depends_on:
      - agency
  db3:
    image: arangodb:latest
    container_name: arango-db3
    volumes:
      - ./arangodb.secret:/etc/arangodb.secret
      - ./cluster/db3:/var/lib/arangodb3
      - ./cluster/db3apps:/var/lib/arangodb3-apps
    command: arangod --server.jwt-secret-keyfile=/etc/arangodb.secret --server.endpoint tcp://0.0.0.0:8529 --cluster.my-address tcp://db3:8529 --cluster.my-role PRIMARY --cluster.agency-endpoint tcp://agency:8531  --cluster.require-persisted-id true
    depends_on:
      - agency
首次运行,--cluster.require-persisted-id false,运行一次后,修改密码,添加database,然后第二次运行,改成--cluster.require-persisted-id true

 
  
  
  
 
