Deployment
Deploy Autional in production with Docker Compose orchestration.
Docker Compose
# Production: use separate infra + services compose files (shipped with the private-deployment deliverable) docker compose -f docker-compose.infra.yml -f docker-compose.monolith.yml up -d
Configuration
Key environment variables to set for production:
| Variable | Description | Required |
|---|---|---|
| JWT_SECRET | Token signing key (min 32 chars) | Yes |
| PASSWORD_PEPPER | Pepper for password hashing | Yes |
| INTERNAL_API_KEY | Service-to-service auth | Yes |
| POSTGRES_PASSWORD | PostgreSQL password | Yes |
| REDIS_PASSWORD | Redis password | Yes |
SSL / TLS
For production, use Let's Encrypt or your own CA. The gateway nginx handles SSL termination. Reference self-signed certificates are in docker/nginx/certs/.
Monitoring
Built-in Prometheus + Grafana dashboards monitor all 27 services; Alertmanager handles alert routing; tracing collects OpenTelemetry data via Jaeger.
# The monitoring stack ships with the full environment orchestration (docker-compose.dev-cloud.yml includes Prometheus / Grafana / Alertmanager / Jaeger) # Grafana: http://localhost:20300
Related Documentation
The production stack referenced on this page is documented by its maintainers: