version: "3.5"

services:
  etcd:
    container_name: svddb-cluster-milvus-etcd
    image: quay.io/coreos/etcd:v3.5.5
    environment:
      - ETCD_AUTO_COMPACTION_MODE=revision
      - ETCD_AUTO_COMPACTION_RETENTION=1000
      - ETCD_QUOTA_BACKEND_BYTES=4294967296
      - ETCD_SNAPSHOT_COUNT=50000
    volumes:
      - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/etcd:/etcd
    command: etcd -advertise-client-urls=http://127.0.0.1:2379 -listen-client-urls http://0.0.0.0:2379 --data-dir /etcd

  pulsar:
    container_name: svddb-cluster-milvus-pulsar
    image: apachepulsar/pulsar:2.8.2
    volumes:
      - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/pulsar:/pulsar/data
    environment:
      # bin/apply-config-from-env.py script will modify the configuration file based on the environment variables
      # nettyMaxFrameSizeBytes must be calculated from maxMessageSize + 10240 (padding)
      - nettyMaxFrameSizeBytes=104867840 # this is 104857600 + 10240 (padding)
      - defaultRetentionTimeInMinutes=10080
      - defaultRetentionSizeInMB=8192
      # maxMessageSize is missing from standalone.conf, must use PULSAR_PREFIX_ to get it configured
      - PULSAR_PREFIX_maxMessageSize=104857600
      - PULSAR_GC=-XX:+UseG1GC
    command: |
      /bin/bash -c \
      "bin/apply-config-from-env.py conf/standalone.conf && \
      exec bin/pulsar standalone --no-functions-worker --no-stream-storage"

  minio:
    container_name: svddb-cluster-milvus-minio
    image: minio/minio:RELEASE.2022-03-17T06-34-49Z
    environment:
      MINIO_ACCESS_KEY: minioadmin
      MINIO_SECRET_KEY: minioadmin
    ports:
      - "9000:9000"
      - "9001:9001"
    volumes:
      - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/minio:/minio_data
    command: minio server /minio_data --console-address ":9001"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3

  rootcoord:
    container_name: svddb-cluster-milvus-rootcoord
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "rootcoord"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
      ROOT_COORD_ADDRESS: rootcoord:53100
    depends_on:
      - "etcd"
      - "pulsar"
      - "minio"

  proxy:
    container_name: svddb-cluster-milvus-proxy
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "proxy"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
    ports:
      - "19530:19530"
      - "9091:9091"

  querycoord:
    container_name: svddb-cluster-milvus-querycoord
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "querycoord"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
      QUERY_COORD_ADDRESS: querycoord:19531
    depends_on:
      - "etcd"
      - "pulsar"
      - "minio"

  querynode:
    container_name: svddb-cluster-milvus-querynode
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "querynode"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
    depends_on:
      - "querycoord"

  querynode-1:
    container_name: svddb-cluster-milvus-querynode-1
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "querynode"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
    depends_on:
      - "querycoord"

  querynode-2:
    container_name: svddb-cluster-milvus-querynode-2
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "querynode"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
    depends_on:
      - "querycoord"

  querynode-3:
    container_name: svddb-cluster-milvus-querynode-3
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "querynode"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
    depends_on:
      - "querycoord"

  indexcoord:
    container_name: svddb-cluster-milvus-indexcoord
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "indexcoord"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
      INDEX_COORD_ADDRESS: indexcoord:31000
    depends_on:
      - "etcd"
      - "pulsar"
      - "minio"

  indexnode:
    container_name: svddb-cluster-milvus-indexnode
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "indexnode"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
      INDEX_COORD_ADDRESS: indexcoord:31000
    depends_on:
      - "indexcoord"

  datacoord:
    container_name: svddb-cluster-milvus-datacoord
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "datacoord"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
      DATA_COORD_ADDRESS: datacoord:13333
    depends_on:
      - "etcd"
      - "pulsar"
      - "minio"

  datanode:
    container_name: svddb-cluster-milvus-datanode
    image: milvusdb/milvus:v2.2.9
    command: ["milvus", "run", "datanode"]
    environment:
      ETCD_ENDPOINTS: etcd:2379
      MINIO_ADDRESS: minio:9000
      PULSAR_ADDRESS: pulsar://pulsar:6650
    depends_on:
      - "datacoord"

  zilliz_attu:
    container_name: svddb-cluster-zilliz_attu
    image: zilliz/attu:v2.2.7
    restart: always
    environment:
      HOST_URL: http://0.0.0.0:8000
      MILVUS_URL: querycoord:19530
    ports:
      - "8000:3000"

networks:
  default:
    name: milvus

现在讨论的是,MILVUS_URL 怎么填的问题

实测填写下面的可以:

  • rootcoord
  • querycoord
  • datacoord
  • indexcoord
  • proxy
  • querynode
  • datanode
  • indexnode

universe_king
3.4k 声望680 粉丝

引用和评论

0 条评论