Configuration
The settings that matter, with their defaults and scope.
Choose the right place
My Settings controls a member’s playback, display, downloads, and privacy. Manage Server controls the household, storage, connections, AI, and maintenance. Settings search opens the relevant page.
Environment reference
Set Compose substitutions in .env. Variables absent from the release Compose file also need an environment: entry in an override.
| Variable | Default | Action |
|---|---|---|
LUMINA_RUNTIME_UID / LUMINA_RUNTIME_GID | 1000 | Set to the non-root host account that owns data and managed media. |
TZ | UTC | Set the server timezone for scheduled scans. |
LUMINA_DOCKER_IMAGE | ghcr.io/shiftedx/lumina:0.4.0 | Pin a published release. |
LUMINA_MEM_LIMIT | 5g | Set container RAM and RAM-plus-swap ceilings. |
LUMINA_PLAYBACK_TMPFS_SIZE | 1g | Size temporary playback storage; it counts toward the memory limit. |
LUMINA_STORAGE_MOUNT_PARENTS | /media | Allow registration beneath these comma-separated container paths. |
LUMINA_TMDB_API_KEY | Off | TMDB v3 key or v4 read token. Prefer the write-only Metadata settings field. |
LUMINA_AI_BASE_URL / LUMINA_AI_MODEL | Off | OpenAI-compatible assistant endpoint and model. |
LUMINA_ASR_BASE_URL / LUMINA_ASR_MODEL | Off | Optional external speech endpoint and model. |
For every variable, see the configuration source. For detailed deployment options, see the operator guide.
Apply an environment change
docker compose config --quiet
docker compose up -d --no-build lumina
docker compose psA restart alone does not apply changed Compose environment values; recreate with up -d.
Set household limits
Open Manage Server → Household to set resource budgets and member overrides. Downloads and recordings share acquisition limits. AI work shares member job limits. Lowering a limit retains current work and prevents excess new starts.
Remote playback budgets apply to actual delivered media bytes across concurrent requests. Leave room for other household traffic.