# Production-style stack built from the app Dockerfiles (no source mounts, no # hot reload). The database is a single SQLite file on a named volume. # # docker compose -f compose.prod.yaml up --build name: tts-arena-prod services: router: build: context: . dockerfile: apps/router/Dockerfile restart: unless-stopped env_file: - .env.development.local environment: PORT: "8080" ROUTER_API_KEY: ${ROUTER_API_KEY:-} ports: - "${ROUTER_PORT:-8080}:8080" web: build: context: . dockerfile: apps/web/Dockerfile restart: unless-stopped env_file: - .env.development.local environment: SQLITE_PATH: /data/tts_arena.db ROUTER_URL: http://router:8080 ROUTER_API_KEY: ${ROUTER_API_KEY:-} APP_URL: ${APP_URL:-http://localhost:3000} PORT: "3000" AUDIO_CACHE_DIR: /audio-cache ports: - "${WEB_PORT:-3000}:3000" volumes: - db-data:/db - web-audio-cache:/audio-cache volumes: db-data: web-audio-cache: