Files
compose-anything/src/milvus-standalone/docker-compose.yaml
T
2026-05-14 16:22:07 +08:00

140 lines
3.7 KiB
YAML

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.3}
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.7}
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:-0.1}
memory: ${MILVUS_MEMORY_RESERVATION:-2G}
attu:
<<: *defaults
image: ${GLOBAL_REGISTRY:-}zilliz/attu:${ATTU_VERSION:-v2.6.4}
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.3}
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:
milvus_data: