Skip to content
Docs

Environment Variables

Set on the container (Compose environment:, Helm values, or the AMI’s overrides file). Every one has a working default; the complete list is in the published .env.example.

Variable Default Notes
LIFEBOAT_MODELS_DIR /models Where weights live. Persist it.
LIFEBOAT_DATA_DIR — Registry, audit log, logs, licence. Persist it — the licence grace clock and cluster identity live here.
LIFEBOAT_SHM_SIZE 8gb Shared memory for tensor parallelism > 1. Fixed at container creation.
LIFEBOAT_GPU_DEVICE a no-op self-mapping Passes an integrated GPU through, e.g. /dev/dri:/dev/dri. The default is deliberately inert: a hardcoded device that the host lacks makes the container refuse to start.
Variable Default Notes
LIFEBOAT_LB_QUEUE_ENABLED off Queue instead of rejecting at capacity. Queue-all mode forces it on.
LIFEBOAT_LB_QUEUE_TTL_SEC 30 Wait before a 504.
LIFEBOAT_LB_QUEUE_MAX_DEPTH_MULTIPLIER 4 Depth ceiling, times the pool’s total concurrency.
LIFEBOAT_LB_SUPERFAST_CAP 4 Per-server cap in superfast, and in hybrid while quiet.
LIFEBOAT_LB_HYBRID_INFLIGHT / _RATE 10 / 10 Thresholds that flip a hybrid pool busy.
LIFEBOAT_TTS_MAX_CONCURRENCY 2 Text-to-speech runs a subprocess per request; each reloads the model, so parallelism costs memory without adding throughput.
Variable Default Notes
LIFEBOAT_STARTING_TIMEOUT_SEC 900 How long a server may be starting.
LIFEBOAT_STARTING_STALL_SEC 300 Silence in its log that counts as stuck.

Both must elapse. A slow start writes to its log; a hung one does not. Raising the timeout alone only moves the cliff.

Variable Default Notes
LIFEBOAT_LICENSE_FILE — Offline .lic imported at boot.
LIFEBOAT_GRACE_HOURS 24 The grace window. Not the paid trial.
LIFEBOAT_TELEMETRY on off stops the census. The licence check-in continues — see Telemetry.
Variable Notes
LIFEBOAT_CLUSTER_SECRET Shared between control plane and every agent. Mismatch → 401 naming the node.

LIFEBOAT_LOG_LEVEL defaults to INFO. At that level the control plane explains its own automatic decisions — the derived memory fraction and why, measured footprints, engine auto-routing, embedding detection, parser corrections. If you are asking why Lifeboat chose something, this is where the answer is.

Variable Default Notes
LIFEBOAT_LLAMACPP_BIN the bundled engine, or the one lifeboat engine install placed in the data directory Absolute path to a llama-server binary. Needed when you build the engine yourself — on a Linux release older than Ubuntu 24.04, where the prebuilt binary’s glibc floor is not met.

Required today, and specific to the pip package — the desktop installer and the container image need neither. Set them in the session you start Lifeboat from.

Variable Set to Why
PYTHONIOENCODING utf-8 Without it lifeboat up exits with UnicodeEncodeError: a Windows console encodes stdout as cp1252 and cannot print the startup banner, which happens before the server binds.
HF_HUB_DISABLE_XET 1 Without it a model download can stall at zero bytes or fail with CAS Client Error. Falls back from Hugging Face’s Xet transfer backend to the classic HTTP path.
Terminal window
$env:PYTHONIOENCODING = "utf-8"
$env:HF_HUB_DISABLE_XET = "1"

See pip Quickstart → Windows.

Shape Where
Compose the environment: map
Helm values, rendered into the pod
AMI /etc/lifeboat/overrides.env — survives restarts
Desktop not generally needed

A variable must be named in environment: to reach the process — an .env file alone only provides substitution.