# Gordon v2 - Production Configuration Example # Optimized for production environments with multiple services [server] port = 8080 registry_port = 5000 registry_domain = "registry.company.com" runtime = "auto" # auto-detects Docker/Podman # socket_path = "" # optional: override with custom socket path ssl_email = "devops@company.com" data_dir = "/var/lib/gordon" [registry_auth] enabled = true username = "deploy-bot" password = "CHANGE-THIS-IN-PRODUCTION" # Use environment variables in production! # Production service routes [routes] "app.company.com" = "company-app:v2.1.0" # Main app with pinned version "api.company.com" = "company-api:v1.5.2" # API service "admin.company.com" = "admin-panel:v1.0.1" # Admin interface "docs.company.com" = "company-docs:latest" # Documentation site "status.company.com" = "status-page:v0.3.0" # Status page # Monitoring and internal tools "grafana.company.com" = "grafana/grafana:latest" # Metrics dashboard "prometheus.company.com" = "prom/prometheus:latest" # Metrics collection # Production deployment workflow: # 1. Build and tag: docker build -t company-app:v2.1.1 . # 2. Tag for registry: docker tag company-app:v2.1.1 registry.company.com/company-app:v2.1.1 # 3. Update this config: "app.company.com" = "company-app:v2.1.1" # 4. Restart Gordon to reload config # 5. Push to deploy: docker push registry.company.com/company-app:v2.1.1 # 6. Gordon automatically deploys to app.company.com!