chore(docker): add local Postgres/MinIO/Qdrant compose stack
This commit is contained in:
74
docker-compose.yml
Normal file
74
docker-compose.yml
Normal file
@@ -0,0 +1,74 @@
|
||||
# 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
|
||||
Reference in New Issue
Block a user