Files
Airtep/gig-poc/infrastructure/docker-compose.prod.yml
2026-03-30 20:49:40 +08:00

53 lines
1.3 KiB
YAML

name: gig-poc-prod
services:
postgres:
image: docker.m.daocloud.io/library/postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_DB: ${POSTGRES_DB:-gig_poc}
POSTGRES_USER: ${POSTGRES_USER:-gig}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-gig}
TZ: Asia/Shanghai
volumes:
- postgres_prod_data:/var/lib/postgresql/data
- ./sql:/docker-entrypoint-initdb.d
qdrant:
image: docker.m.daocloud.io/qdrant/qdrant:v1.14.1
restart: unless-stopped
volumes:
- qdrant_prod_data:/qdrant/storage
api:
build:
context: ..
dockerfile: apps/api/Dockerfile
restart: unless-stopped
environment:
APP_ENV: production
DATABASE_URL: postgresql+psycopg://${POSTGRES_USER:-gig}:${POSTGRES_PASSWORD:-gig}@postgres:5432/${POSTGRES_DB:-gig_poc}
QDRANT_URL: http://qdrant:6333
LOG_LEVEL: INFO
LLM_ENABLED: ${LLM_ENABLED:-false}
LLM_BASE_URL: ${LLM_BASE_URL:-}
LLM_API_KEY: ${LLM_API_KEY:-}
LLM_MODEL: ${LLM_MODEL:-gpt-5.4}
depends_on:
- postgres
- qdrant
web:
build:
context: ..
dockerfile: apps/web/Dockerfile
restart: unless-stopped
depends_on:
- api
ports:
- "${WEB_PORT:-80}:80"
volumes:
postgres_prod_data:
qdrant_prod_data: