build-flow.api/scripts/backend-optimization-compose.yml

71 lines
1.6 KiB
YAML

services:
postgres:
image: pgvector/pgvector:0.8.0-pg17
environment:
POSTGRES_USER: buildflow
POSTGRES_PASSWORD: buildflow
POSTGRES_DB: postgres
ports:
- "127.0.0.1::5432"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U buildflow -d postgres"]
interval: 2s
timeout: 5s
retries: 30
volumes:
- postgres-data:/var/lib/postgresql/data
redis:
image: redis:7-alpine
ports:
- "127.0.0.1::6379"
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 2s
timeout: 5s
retries: 30
volumes:
- redis-data:/data
mongo:
image: mongo:7
environment:
MONGO_INITDB_ROOT_USERNAME: buildflow
MONGO_INITDB_ROOT_PASSWORD: buildflow
ports:
- "127.0.0.1::27017"
healthcheck:
test:
- CMD-SHELL
- >-
mongosh --quiet --host 127.0.0.1 --port 27017
-u buildflow -p buildflow --authenticationDatabase admin
--eval "quit(db.adminCommand('ping').ok ? 0 : 1)"
interval: 2s
timeout: 5s
retries: 30
volumes:
- mongo-data:/data/db
minio:
image: minio/minio:RELEASE.2025-04-22T22-12-26Z
command: server /data --console-address ":9001"
environment:
MINIO_ROOT_USER: buildflowminio
MINIO_ROOT_PASSWORD: buildflowminiosecret
ports:
- "127.0.0.1::9000"
healthcheck:
test: ["CMD-SHELL", "curl -fsS http://127.0.0.1:9000/minio/health/live >/dev/null"]
interval: 2s
timeout: 5s
retries: 30
volumes:
- minio-data:/data
volumes:
postgres-data:
redis-data:
mongo-data:
minio-data: