Operations

Configuration reference

Source

The configuration catalog lists every field reachable from the central EdenConfig, its Rust type, legacy environment aliases, declared default expressions and source definition. Optional product fields can exist even when their feature is absent from your image. Runtime controls outside that central model are identified separately below.

Precedence and formats

The central loader applies these layers, from lowest to highest priority:

  1. Compiled defaults.
  2. eden.toml, or the file selected by --config when the executable uses that CLI.
  3. Legacy flat environment aliases, such as EDEN_PORT.
  4. Nested environment variables prefixed EDEN__, with __ between path segments.
  5. Explicit supported CLI overrides: --port, --log-level, --otlp-collector.

For example, TOML services.eden.port, EDEN_PORT, and EDEN__SERVICES__EDEN__PORT all select the same central field. Nested environment values win over flat aliases. Within the flat mapping, the later alias wins; backend-neutral durable outbox aliases are deliberately mapped after the older ClickHouse names. Avoid setting multiple spellings of the same value.

toml
[services.eden]
host = "0.0.0.0"
port = 8000

[limits]
rate_limit_ms = 100
jwt_expiry_secs = 900

[telemetry]
log_level = "info"
logs_enabled = true
otlp_export_enabled = false

Configuration validation rejects invalid combinations at startup. The config library supports reload internally, but this does not guarantee a public reload operation or that every initialized component re-reads its settings. Plan a controlled restart for environment, credential, exporter and mounted-file changes unless the specific feature documents live updates.

Helm values first produce container environment variables, volumes and command arguments; they are not an additional runtime precedence layer. Container-image defaults can override central compiled defaults. Inspect the rendered manifests and image profile together, especially state paths and licensing mode.

Essential settings

SettingDefault / requirementMeaning
EDEN_HOST, EDEN_PORTCentral defaults localhost, 8000; embedded images also set bind-all behaviorHTTP listener; place TLS at the deployment ingress
EDEN_NEW_ORG_TOKENRequired for organization bootstrapPrivileged creation token; keep outside customer client applications
EDEN_JWT_SECRETRequired; base64-encoded bytesToken signing secret; generate 32 random bytes
EDEN_DB_ENCRYPTION_KEYRequired for encrypted credentials; 64 lowercase hex charactersPreserve with state backups; replacing it does not re-encrypt existing data
EDEN__ENCRYPTION__ORG_KEY_ENV_VARDefault base EDEN_ORG_ENCRYPTION_KEYELS per-organization keys use __; retain keys/references with backups
EDEN_JWT_EXPIRY_S900 secondsEden-issued JWT lifetime
EDEN_RATE_LIMITCentral default 100 ms; single Compose sets 0One quota replenishment per interval; 0 disables this limiter; this is not requests/second
EDEN_LICENSE_ENFORCEMENTProduction online required; offline offline_lease with matching imageLicense admission mode
EDEN_LICENSE_KEY, EDEN_CLUSTER_UID, EDEN_PHONE_HOME_URLIssued key, stable deployment identity, HTTPS authorityOnline paid licensing inputs
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB_NAME, POSTGRES_USER, POSTGRES_PASSWORDExternal/HA deployment inputsEden control database, distinct from application endpoint credentials
CLICKHOUSE_URL, CLICKHOUSE_USER, CLICKHOUSE_PASSWORD, CLICKHOUSE_DATABASEExternal/HA analytics inputsIndependently operated analytics backend
EDEN_CLICKHOUSE_SCHEMA_MANAGEMENT_ENABLEDSet false after separately provisioning production schemasControls automatic telemetry schema mutation

Use telemetry integrations for exporter defaults, wire protocols, tokens, retention, outbox bounds and delivery guarantees. Use external identity for [auth.external] issuer, audience, organization and group mappings.

Runtime settings outside the central field catalog

These are consumed directly by the relevant runtime rather than mapped through EdenConfig; the central nested spelling does not automatically configure them.

ControlPurpose / default
EDEN_TURSO_PATHEmbedded control database; packaged single images use /var/lib/eden/control.db
EDEN_EMBEDDED_HTTP_BIND_ALLPackaged embedded images set true; review exposure when publishing ports
EDEN_DBOS_DATABASE_URLOptional external PostgreSQL for DBOS durable workflows in embedded deployments
EDEN_REDIS_MIGRATION_WORKFLOW_RUNTIMEWorkflow executor selection; inspect the workflow runtime/status contract before enabling DBOS
EDEN_MIGRATION_HEARTBEAT_INTERVAL_SECONDS5; positive and shorter than the no-progress timeout
EDEN_MIGRATION_NO_PROGRESS_TIMEOUT_SECONDS300; allowed range 15 seconds–24 hours
EDEN_INTERLAY_SHUTDOWN_TIMEOUT_MSBound for listener shutdown; set platform termination grace longer than this plus exporter drain
EDEN_HA_CONFIGPer-node production HA configuration file; preserve accepted generations and identity material

Legacy backup aliases in the flat mapping address snapshot., which is absent from the current central model. Use declared backup. fields and verify the specific backup operation rather than assuming those aliases configure it.

Endpoint connection pools, TLS, credentials and multi-key execution are configured on the endpoint resource. See database credentials, Redis, and PostgreSQL. They are separate from the databases used by Eden itself.

Secrets and deployment review

Use existing Kubernetes Secrets or private mounted files as required by the feature. Do not place bootstrap tokens, JWT/encryption keys, passwords, licenses, collector authorization headers or HA private keys in a public values file. The chart does not generate HA trust roots. Roll replicas deliberately after Secret rotation; a projected Secret update alone does not prove that a running component has reloaded the value.

Check effective values without publishing secret-bearing environment dumps. Record image digest, non-secret overrides, state locations, configured secret versions and the result of /ready in the deployment record.

Help improve Eden Docs

Find something unclear or incomplete? Review the source and propose an update.

View on GitLab Updated November 4, 2026