Docker Compose (Development)

Services

# PostgreSQL
db:
  image: postgres:15-alpine
  port: 5432
  volume: pgdata
  healthcheck: pg_isready

# Backend API
backend:
  build: ./backend
  port: 8000
  depends_on: db (healthy)
  auto-runs: alembic upgrade head on start
  volume: live reload

# Frontend
frontend:
  build: ./frontend
  port: 5173
  volume: live reload

Commands

make docker-up     # Start all services (build + detached)
make docker-down   # Stop all services
make docker-seed   # Create admin user in container
make docker-logs   # Tail logs

CI/CD Pipeline

GitHub Actions runs on pull requests to master:

Backend Job

Frontend Job


Production Checklist