Variable | Required | What it controls |
|---|---|---|
REGION | Yes | Logical region name used in placement and diagnostics. |
JWT_SECRET | Yes | Secret used to validate bearer tokens in symmetric-token deployments. |
ANVIL_SECRET_ENCRYPTION_KEY | Yes | Hex key for encrypted control-plane secrets. Losing it can make stored secrets unrecoverable. |
ANVIL_CLUSTER_SECRET | Clustered deployments | Shared secret for authenticated node-to-node traffic. |
API_LISTEN_ADDR | No | Local bind address for native and S3-compatible traffic. |
PUBLIC_API_ADDR | Yes | Address clients should use to reach this deployment. |
CLUSTER_LISTEN_ADDR | Clustered deployments | Local bind address for cluster traffic. |
PUBLIC_CLUSTER_ADDRS | Clustered deployments | Advertised peer addresses. |
BOOTSTRAP_ADDRS | Joining nodes | Existing node addresses used when joining. |
INIT_CLUSTER | First node | Initializes a new deployment. Do not set on ordinary joining nodes. |
ENABLE_MDNS | Development/local networks | Enables local discovery where appropriate. |
STORAGE_PATH | No | Durable Anvil state directory. Defaults to anvil-data. Set explicitly in production. |
METADATA_CACHE_TTL_SECS | No | Time-to-live for in-process metadata cache entries. |
OBJECT_METADATA_COMPACTION_FRAME_THRESHOLD | No | Journal frame threshold before metadata compaction is scheduled. |
OBJECT_METADATA_COMPACTION_BYTES_THRESHOLD | No | Encoded journal byte threshold before metadata compaction is scheduled. |
TASK_LEASE_TTL_SECS | No | Lease duration for in-process background responsibilities. |
Field | Meaning |
|---|---|
host | Native API endpoint. |
client_id | Application id used for token exchange. |
client_secret | Application secret. |
default_region | Region used by commands that create regional resources. |