# ============================================ # BreakPilot PWA - Staging Overrides # ============================================ # Usage: docker compose -f docker-compose.yml -f docker-compose.staging.yml up -d # # Or use the helper script: # ./scripts/start.sh staging # ============================================ services: # ========================================== # Python Backend (FastAPI) # ========================================== backend: environment: - DEBUG=false - ENVIRONMENT=staging - LOG_LEVEL=info restart: unless-stopped # No hot-reload in staging command: uvicorn main:app --host 0.0.0.0 --port 8000 # ========================================== # Go Consent Service # ========================================== consent-service: environment: - GIN_MODE=release - ENVIRONMENT=staging - LOG_LEVEL=info restart: unless-stopped # ========================================== # Go School Service # ========================================== school-service: environment: - GIN_MODE=release - ENVIRONMENT=staging restart: unless-stopped # ========================================== # Go Billing Service # ========================================== billing-service: environment: - GIN_MODE=release - ENVIRONMENT=staging restart: unless-stopped # ========================================== # Klausur Service (Python + React) # ========================================== klausur-service: environment: - DEBUG=false - ENVIRONMENT=staging restart: unless-stopped # ========================================== # Website (Next.js) # ========================================== website: environment: - NODE_ENV=production restart: unless-stopped # ========================================== # PostgreSQL (Separate Database for Staging) # ========================================== postgres: ports: - "5433:5432" # Different port for staging! environment: - POSTGRES_DB=${POSTGRES_DB:-breakpilot_staging} volumes: - breakpilot_staging_postgres:/var/lib/postgresql/data # ========================================== # MinIO (Object Storage - Different Ports) # ========================================== minio: ports: - "9002:9000" - "9003:9001" volumes: - breakpilot_staging_minio:/data # ========================================== # Qdrant (Vector DB - Different Ports) # ========================================== qdrant: ports: - "6335:6333" - "6336:6334" volumes: - breakpilot_staging_qdrant:/qdrant/storage # ========================================== # Mailpit (Still using Mailpit for Safety) # ========================================== mailpit: ports: - "8026:8025" # Different Web UI port - "1026:1025" # Different SMTP port # ========================================== # DSMS Gateway # ========================================== dsms-gateway: environment: - DEBUG=false - ENVIRONMENT=staging restart: unless-stopped # ========================================== # Enable Backup Service in Staging # ========================================== backup: profiles: [] # Remove profile restriction = always start environment: - PGDATABASE=breakpilot_staging # ========================================== # Separate Volumes for Staging # ========================================== volumes: breakpilot_staging_postgres: name: breakpilot_staging_postgres breakpilot_staging_minio: name: breakpilot_staging_minio breakpilot_staging_qdrant: name: breakpilot_staging_qdrant