version: "3.9" services: app: build: context: .. dockerfile: docker/Dockerfile ports: - "${PORT:-8000}:8000" env_file: - ../.env environment: PORT: "8000" OPENAI_BACKEND: "${OPENAI_BACKEND:-https://api.deepseek.com}" DATABASE_DSN: "host=postgres user=app password=pass dbname=app port=5432 sslmode=disable TimeZone=UTC" REQUEST_TIMEOUT_SECONDS: "${REQUEST_TIMEOUT_SECONDS:-30}" depends_on: postgres: condition: service_healthy restart: unless-stopped postgres: image: postgres:16-alpine environment: POSTGRES_USER: app POSTGRES_PASSWORD: pass POSTGRES_DB: app volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U app"] interval: 5s timeout: 5s retries: 5 restart: unless-stopped volumes: pgdata: