Configuration¶
Configuration is split between backend environment variables and UI settings.
Backend runtime settings¶
Primary source of truth: backend/app/core/config.py.
Key areas:
- Security and auth: JWT keys, credential keys, refresh cookie settings.
- Database:
DATABASE_URL. - CORS:
CORS_ORIGINS. - Feature force-locks:
FEATURE_MANAGER_ENABLED,FEATURE_BROWSER_ENABLED,FEATURE_CEPH_ADMIN_ENABLED,FEATURE_STORAGE_OPS_ENABLED,FEATURE_BILLING_ENABLED,FEATURE_ENDPOINT_STATUS_ENABLED. - Internal scheduler auth:
INTERNAL_CRON_TOKEN. - Billing, quota monitoring, and healthcheck behavior.
- Shared history retention:
BILLING_DAILY_RETENTION_DAYS,QUOTA_HISTORY_HOURLY_RETENTION_DAYS,QUOTA_HISTORY_DAILY_RETENTION_DAYS. - Quota SMTP secret:
SMTP_PASSWORD.
App settings (persisted)¶
Primary model: backend/app/models/app_settings.py.
Managed from Admin UI:
- General feature toggles (
manager_enabled,browser_enabled,ceph_admin_enabled,storage_ops_enabled,billing_enabled,endpoint_status_enabled). - Quota supervision toggles (
quota_alerts_enabled,usage_history_enabled). - Browser sub-flags (
browser_root_enabled,browser_manager_enabled,browser_ceph_admin_enabled). - Migration/compare flags and manager behavior.
- Quota notification policy (
quota_notifications: threshold, SMTP non-secret fields, contact-email option).
Frontend runtime settings¶
VITE_API_URLfor API base URL in frontend build/runtime.- In container deployments, route
/apito backend via reverse proxy/ingress.
Branding¶
Admin can set:
- primary accent color (
#RRGGBB) - optional login logo URL