75 lines
2.0 KiB
YAML
75 lines
2.0 KiB
YAML
# Application-owned local infrastructure: Postgres, MinIO, Qdrant.
|
|
#
|
|
# Intentionally separate from docker-compose.langfuse.yml (different service
|
|
# names, volumes, and ports). Run alone for app development, or combine with
|
|
# Langfuse:
|
|
#
|
|
# docker compose \
|
|
# -f docker-compose.yml \
|
|
# -f docker-compose.langfuse.yml \
|
|
# --env-file .env \
|
|
# --env-file .env.langfuse \
|
|
# up -d
|
|
#
|
|
# Do not use this compose stack as-is for production.
|
|
services:
|
|
app-postgres:
|
|
image: docker.io/postgres:17
|
|
restart: always
|
|
environment:
|
|
POSTGRES_USER: ${POSTGRES_USER:-chatbot}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-chatbot}
|
|
POSTGRES_DB: ${POSTGRES_DB:-chatbot}
|
|
ports:
|
|
- 127.0.0.1:${POSTGRES_PORT:-5433}:5432
|
|
volumes:
|
|
- app_postgres_data:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-chatbot}"]
|
|
interval: 3s
|
|
timeout: 3s
|
|
retries: 10
|
|
|
|
app-minio:
|
|
image: cgr.dev/chainguard/minio
|
|
restart: always
|
|
entrypoint: sh
|
|
command: -c 'mkdir -p /data/${MINIO_BUCKET:-chatbot-source-files} && minio server --address ":9000" --console-address ":9001" /data'
|
|
environment:
|
|
MINIO_ROOT_USER: ${MINIO_ACCESS_KEY:-chatbot}
|
|
MINIO_ROOT_PASSWORD: ${MINIO_SECRET_KEY:-chatbot-secret}
|
|
ports:
|
|
- 127.0.0.1:9100:9000
|
|
- 127.0.0.1:9101:9001
|
|
volumes:
|
|
- app_minio_data:/data
|
|
healthcheck:
|
|
test: ["CMD", "mc", "ready", "local"]
|
|
interval: 1s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 1s
|
|
|
|
app-qdrant:
|
|
image: docker.io/qdrant/qdrant
|
|
restart: always
|
|
ports:
|
|
- 127.0.0.1:6343:6333
|
|
- 127.0.0.1:6344:6334
|
|
volumes:
|
|
- app_qdrant_data:/qdrant/storage
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "bash -c '</dev/tcp/localhost/6333' 2>/dev/null || exit 1"]
|
|
interval: 3s
|
|
timeout: 3s
|
|
retries: 10
|
|
start_period: 3s
|
|
|
|
volumes:
|
|
app_postgres_data:
|
|
driver: local
|
|
app_minio_data:
|
|
driver: local
|
|
app_qdrant_data:
|
|
driver: local
|