Reference

Environment Variables

Every environment variable OKE reads — connection URLs, driver overrides, secrets, and CLI flags, grouped by what they configure.

OKE reads environment variables at boot for connection detail and secrets — never for behavior you could declare in oke.config.ts. In docker mode these are written for you into docker/.env.docker; this page is the full map.

Precedence

For anything with both an OKE_* variable and a conventional one (like DATABASE_URL), the conventional variable wins first, then the OKE_* form, then the built-in default.

SQL store

VariableUsed forDefault when unset
DATABASE_URLPostgres connection (postgres driver, drizzle-kit)postgres://localhost:5432/oke
OKE_STORE_SQL_URLExplicit SQL URL override
OKE_SQLITE_URLSQLite file path (sqlite driver).oke/app.sqlite
OKE_SQL_DRIVERForce the sql driver id at bootconfig map

KV store

VariableUsed forDefault when unset
REDIS_URLRedis connectiondriver default
OKE_STORE_KV_URLExplicit KV URL override
OKE_KV_DRIVERForce the kv driver idconfig map

Files store

VariableUsed forDefault when unset
S3_BUCKETBucket name (s3 driver)
S3_ENDPOINTS3-compatible endpoint (RustFS)
S3_ACCESS_KEY_IDAccess key
S3_SECRET_ACCESS_KEYSecret key
S3_REGIONRegion
S3_SESSION_TOKENSession token (temporary creds)
OKE_STORE_FILES_DBExplicit files location override
OKE_FILES_DRIVERForce the files driver idconfig map

Vault (OpenBao)

Written by the first-boot bootstrap; you normally only set these when pointing at an external vault.

VariableUsed forDefault when unset
OKE_VAULT_URLOpenBao base URL
OKE_VAULT_TOKENApp token (least-privilege)
OKE_VAULT_MOUNTKV v2 mount path"secret"

Channel (email)

VariableUsed for
SMTP_URLFull SMTP connection string (smtp://…)
SMTP_USEROverrides the user embedded in SMTP_URL
SMTP_PASSWORDOverrides the password in SMTP_URL
OKE_CHANNEL_EMAIL_URLOKE-specific alternative to SMTP_URL

AI providers

VariableUsed for
ANTHROPIC_API_KEYanthropic driver credential
ANTHROPIC_MODELModel override for the anthropic driver
OPENAI_API_KEYopenai-compatible driver credential

Framework behavior

VariableUsed for
OKE_DOCKER"1" marks docker mode (set by the CLI, not by you)
OKE_DB_AUTO_PUSHOverrides db.autoPush at boot
OKE_DRIZZLE_DIALECT"sqlite" | "postgresql" for generated drizzle config
OKE_DEV_REQUEST_LOG"1" logs requests during oke dev (set by the CLI)
OKE_CONSOLE_SECRETConsole session secret — set explicitly in production
PORTApp port in production containers (default 6530)
NODE_ENV"production" switches the Console to its production posture

Learn more

  • Configuration — the declarative side of the same knobs
  • Vault — how OKE_VAULT_* gets minted on first boot
  • CLI Reference — which commands write these for you

On this page