chore: add docker-compose.prod.yml production override

Removes --reload from uvicorn, adds restart: unless-stopped to all
services, bumps uvicorn to 2 workers.

Authored-By: Jack Levy
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Jack Levy
2026-03-02 00:04:15 -05:00
parent 10aced78b0
commit 22743935c4

32
docker-compose.prod.yml Normal file
View File

@@ -0,0 +1,32 @@
# Production overrides — use with:
# docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d --build
#
# Changes from dev:
# - uvicorn runs without --reload
# - all services restart unless stopped
# - worker concurrency bumped to match a typical host
services:
postgres:
restart: unless-stopped
redis:
restart: unless-stopped
api:
command: >
sh -c "alembic upgrade head &&
uvicorn app.main:app --host 0.0.0.0 --port 8000 --workers 2"
restart: unless-stopped
worker:
restart: unless-stopped
beat:
restart: unless-stopped
frontend:
restart: unless-stopped
nginx:
restart: unless-stopped