“Where Set” lists the place that supplies the value. .env is the app’s own .env (copy .env.example). Komodo means the stack environment in deploy/exam-platform.toml.
Filters what reaches stdout (development) and Sentry.
EDD_PORT
no
13002
.env
Host port on 127.0.0.1. Container always listens on 13002.
LISTEN_ADDR
no
0.0.0.0:13002
compose.yaml, Dockerfile
Bind address. Do not change: baked into image.
WEB_DIR
no
dist natively; /app/web in image
Process environment, compose.yaml, Dockerfile
Static directory relative to working directory. Client builds to apps/examiner-dashboard/dist; default works when run from the app directory. No startup check for index.html.
GOOGLE_OAUTH_ID
unless mock defaults apply
none
Process environment, .env for Compose, Komodo
Google OAuth web client ID; must not be empty.
GOOGLE_OAUTH_SECRET
unless mock defaults apply
none
Process environment, .env for Compose, Komodo
OAuth client secret; must not be empty.
GOOGLE_REDIRECT_URL
unless mock defaults apply
none
Process environment, .env for Compose, Komodo
Valid callback URL registered in Google Cloud: public HTTPS origin plus /auth/google/callback.
COOKIE_KEY
unless mock defaults apply
none
Process environment, .env for Compose, Komodo
Private-cookie key, at least 64 bytes. Generate with openssl rand -hex 64; keep secret and stable. Rotation invalidates cookies.
EDB_DATABASE_URL
yes
none
Process environment, .env for Compose, Komodo
eDb Postgres URL as role edd. Compose host examiner-db. Hosted: append ?sslmode=verify-full.
MOCK_AUTH
no
false
Process environment
Debug-only mock auth. Release builds reject true; Compose does not forward it. Defaults for OAuth/key fields apply only when unset, not empty.
One-shot service in eDd’s compose.yaml, profile migrate: runs the image’s cdb-migrate, after migrate. Gets only these. aAPI never migrates cDb.
Name
Required
Default
Where Set
Description
MIGRATE_IMAGE
yes
empty
Komodo (EXAM_PLATFORM_EXAMINER_DASHBOARD_MIGRATE_IMAGE, by deploy Action)
Image whose cdb-migrate runs. Never built: empty fails.
CDB_MIGRATOR_URL
yes
empty
Komodo (EXAM_PLATFORM_CURRICULUM_DB_MIGRATOR_URL)
mysql://root:<CDB_ROOT_PASSWORD>@curriculum-db:3306/curriculum: root until app roles exist. Names the database, never a curriculum/<branch> revision. Also cargo sqlx‘s URL (sqlx.toml) and the cdb tests’ server (unset: they skip).
Native dashboard execution needs exported environment variables; copying .env alone does not load them. Export them first: set -a; source .env; set +a. Mock mode defaults to test credentials/key and http://127.0.0.1:13002/auth/google/callback. Both need a running, migrated eDb.