Gateway Configuration
The gateway is configured via environment variables and command-line flags.Environment Variables
| Variable | Required | Description |
|---|---|---|
GATEWAY_PORT | No | Listen port (default: 8090) |
VALKEY_URL | No | Valkey/Redis URL for service discovery |
AWS_REGION | Yes | S3 region for deployment registry |
AWS_ENDPOINT_URL | No | S3 endpoint (for MinIO) |
S3_BUCKET | Yes | Deployment registry bucket |
ENVIRONMENT | No | Environment name (dev/staging/production) |
ADMIN_API_KEY | Yes | Admin authentication key |
SECRETS_KEY | Yes | Encryption key for agent secrets |
API Key Management
Keys are stored in Valkey with the format:pod_admin_*— Admin keys (full access)pod_*— Tenant keys (scoped access)
Coordinator Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
COORDINATOR_PORT | No | Listen port (default: 9090) |
COORDINATOR_ID | No | Unique coordinator ID (auto-generated) |
VALKEY_URL | No | Valkey URL for registration |
AWS_REGION | Yes | S3 region |
S3_BUCKET | Yes | Deployment registry bucket |
CHRONICLE_ENABLE | No | Enable Chronicle FUSE mounts (default: true) |
CHRONICLE_S3_BUCKET | No | S3 bucket for Chronicle CAS |
LITESTREAM_REPLICA_URL | No | S3 URL for Litestream database replication |
Agent Configuration
Agents receive configuration as a JSON object at init time:- Gateway API:
PUT /api/v1/config - Valkey pub/sub:
framework.config_updateevents - Declarative config files (checked into deployment bundles)
Runtime vs Declarative Config
Podium supports both runtime (Valkey-stored) and declarative (file-based) configuration:- Declarative: Checked into the deployment bundle, version-controlled
- Runtime: Updated via API, stored in Valkey, takes precedence over declarative
- Merged view: Runtime overrides declarative on a per-key basis