Skip to content

Configuration

All Progress backend services read configuration from environment variables prefixed with PROGRESS_ and from Docker secrets mounted at /run/secrets/.

The following table is auto-extracted from backend/api/utils/config.py at build time by scripts/extract_config.py. New fields appear here automatically on every push.

Env varTypeDefaultNotes
PROGRESS_ARANGO_URLstr'http://localhost:8529'
PROGRESS_API_ROOT_PATHstr'/api'
PROGRESS_MEDIA_PATHstr'/media'
PROGRESS_DB_NAMEstr'PROGRESS_TEST'
PROGRESS_WEBAPP_URLstr'http://localhost:9000'
PROGRESS_API_DB_USERNAMEstr'root'
PROGRESS_API_DB_PWDstr_(empty)_Provided as Docker secret
PROGRESS_JWT_SECRETstr_(empty)_Provided as Docker secret
PROGRESS_CORS_ALLOWED_ORIGINSlist[str]['*']
PROGRESS_NATS_URLstr'nats://broker:4222'

Docker secrets

These values are provided via Docker secrets (mounted under /run/secrets/) and are read directly from those files at startup:

  • progress_api_db_pwd
  • progress_admin_pwd
  • progress_jwt_secret

Environment file precedence

Pydantic Settings reads configuration in this order (last wins):

  1. Hardcoded class defaults.
  2. .env file (development only — not present in production).
  3. Environment variables (Compose environment: blocks).
  4. Docker secrets at /run/secrets/{name} (production).
  • Deployment — which secrets and volumes to create before deploying
  • Operations — verifying configuration at runtime

Released under the Apache 2.0 License.