x-defaults: &defaults restart: unless-stopped logging: driver: json-file options: max-size: 100m max-file: "3" services: etcd: <<: *defaults image: quay.io/coreos/etcd:${ETCD_VERSION:-v3.5.18} environment: - TZ=${TZ:-UTC} - ETCD_AUTO_COMPACTION_MODE=revision - ETCD_AUTO_COMPACTION_RETENTION=1000 - ETCD_QUOTA_BACKEND_BYTES=4294967296 - ETCD_SNAPSHOT_COUNT=50000 volumes: - etcd_data:/etcd command: etcd -advertise-client-urls=http://etcd:2379 -listen-client-urls http://0.0.0.0:2379 --data-dir /etcd healthcheck: test: ["CMD", "etcdctl", "endpoint", "health"] interval: 30s timeout: 20s retries: 3 start_period: 30s deploy: resources: limits: cpus: ${ETCD_CPU_LIMIT:-0.25} memory: ${ETCD_MEMORY_LIMIT:-256M} reservations: cpus: ${ETCD_CPU_RESERVATION:-0.1} memory: ${ETCD_MEMORY_RESERVATION:-128M} minio: <<: *defaults image: ${GLOBAL_REGISTRY:-}minio/minio:${MINIO_VERSION:-RELEASE.2024-12-18T13-15-44Z} environment: TZ: ${TZ:-UTC} MINIO_ROOT_USER: ${MINIO_ROOT_USER:-minioadmin} MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD:-minioadmin} ports: - "${MINIO_PORT_OVERRIDE_API:-9000}:9000" - "${MINIO_PORT_OVERRIDE_WEBUI:-9001}:9001" volumes: - minio_data:/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 start_period: 30s deploy: resources: limits: cpus: ${MINIO_STANDALONE_CPU_LIMIT:-0.5} memory: ${MINIO_STANDALONE_MEMORY_LIMIT:-512M} reservations: cpus: ${MINIO_STANDALONE_CPU_RESERVATION:-0.1} memory: ${MINIO_STANDALONE_MEMORY_RESERVATION:-256M} milvus-standalone: <<: *defaults image: ${GLOBAL_REGISTRY:-}milvusdb/milvus:${MILVUS_VERSION:-v2.6.3} command: ["milvus", "run", "standalone"] security_opt: - seccomp:unconfined environment: TZ: ${TZ:-UTC} ETCD_ENDPOINTS: etcd:2379 MINIO_ADDRESS: minio:9000 MQ_TYPE: woodpecker volumes: - milvus_data:/var/lib/milvus healthcheck: test: ["CMD", "curl", "-f", "http://localhost:9091/healthz"] interval: 30s start_period: 90s timeout: 20s retries: 3 ports: - "${MILVUS_PORT_OVERRIDE_HTTP:-19530}:19530" - "${MILVUS_PORT_OVERRIDE_WEBUI:-9091}:9091" depends_on: etcd: condition: service_healthy minio: condition: service_healthy deploy: resources: limits: cpus: ${MILVUS_CPU_LIMIT:-2.0} memory: ${MILVUS_MEMORY_LIMIT:-4G} reservations: cpus: ${MILVUS_CPU_RESERVATION:-1.0} memory: ${MILVUS_MEMORY_RESERVATION:-2G} attu: <<: *defaults image: ${GLOBAL_REGISTRY:-}zilliz/attu:${ATTU_VERSION:-v2.6.1} profiles: - attu environment: - TZ=${TZ:-UTC} - MILVUS_URL=${MILVUS_URL:-milvus-standalone:19530} ports: - "${ATTU_PORT_OVERRIDE:-8000}:3000" depends_on: milvus-standalone: condition: service_healthy deploy: resources: limits: cpus: ${ATTU_CPU_LIMIT:-0.25} memory: ${ATTU_MEMORY_LIMIT:-256M} reservations: cpus: ${ATTU_CPU_RESERVATION:-0.1} memory: ${ATTU_MEMORY_RESERVATION:-128M} healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/"] interval: 30s timeout: 10s retries: 3 start_period: 10s volumes: etcd_data: minio_data: