Skip to content

Configuration

GeoJibe reads ENCIVA_* environment variables. Typical files:

  • enciva.env in the working directory
  • /etc/enciva/enciva.env on a packaged host
  • ENCIVA_CONFIG pointing at another env file

Process environment wins over the file. This page lists intended settings. It does not include secrets.

The service binary and variable prefix are still enciva / ENCIVA_ on current installs.

Core

Name Purpose Default Required
ENCIVA_LISTEN_ADDR HTTP listen address 127.0.0.1:8080 No
ENCIVA_DATA_DIR Working files, database, sync state ./data No
ENCIVA_LOG_LEVEL debug, info, warn, error info No
ENCIVA_SECRET_KEY Encrypts saved connection secrets Generated file in the data dir if unset Yes if you restore a database that already has secrets
ENCIVA_SESSION_TTL Sign-in cookie lifetime 24h No
ENCIVA_COOKIE_SECURE Set true behind HTTPS false No

Example:

ENCIVA_LISTEN_ADDR=127.0.0.1:8080
ENCIVA_DATA_DIR=/var/lib/enciva

Uploads and jobs

Name Purpose Default
ENCIVA_MAX_UPLOAD_MB Upload size 256
ENCIVA_MAX_ZIP_FILES Files inside a ZIP 256
ENCIVA_MAX_UNCOMPRESSED_MB Unzipped size 1024
ENCIVA_JOB_TTL How long one-off job files are kept 60m

Spatial runtime (Docker)

Convert, inspect, and Python run in a pinned OSGeo image. Docker is required for that path.

Name Purpose Default
GDAL_IMAGE or ENCIVA_GDAL_IMAGE Pinned image tag (not :latest) ghcr.io/osgeo/gdal:ubuntu-full-3.13.3
ENCIVA_DOCKER Docker CLI docker
ENCIVA_GDAL_PULL Pull image at startup true
ENCIVA_GDAL_TIMEOUT Per-job processing timeout 120s
ENCIVA_CONTAINER_MEMORY Memory limit 2g
ENCIVA_CONTAINER_CPUS CPU limit 2
ENCIVA_CONTAINER_PIDS PID limit 128

URL, FeatureServer, S3 import

Name Purpose Default
ENCIVA_URL_IMPORT_ENABLED Allow URL import true
ENCIVA_URL_CONNECT_TIMEOUT Connect timeout 10s
ENCIVA_URL_DOWNLOAD_TIMEOUT Download timeout 2m
ENCIVA_URL_HEADER_TIMEOUT Header timeout 30s
ENCIVA_URL_MAX_REDIRECTS Redirect cap 5
ENCIVA_URL_DOWNLOAD_MAX_BYTES Size cap (0 = unset) unset
ENCIVA_FEATURESERVER_IMPORT_ENABLED Allow FeatureServer import true
ENCIVA_FEATURESERVER_TIMEOUT Import timeout 10m
ENCIVA_FEATURESERVER_MAX_FEATURES Feature cap 2000000
ENCIVA_S3_IMPORT_ENABLED Allow S3 import true
ENCIVA_S3_TIMEOUT Import timeout 10m

Sync

Name Purpose Default
ENCIVA_QFIELD_SYNC_ENABLED Show/run QFieldCloud sync true
ENCIVA_MERGIN_SYNC_ENABLED Show/run Mergin Maps sync true
ENCIVA_QFIELDCLOUD_CLI qfieldcloud-cli path /opt/enciva/runtime/qfield/.venv/bin/qfieldcloud-cli
ENCIVA_GEODIFF_BIN GeoDiff binary /usr/local/bin/geodiff
ENCIVA_MERGIN_PYTHON Mergin Python /opt/enciva/runtime/mergin/.venv/bin/python3
ENCIVA_MERGIN_DBSYNC Mergin db-sync script /opt/enciva/runtime/mergin/db-sync-2.1.1/dbsync_daemon.py
ENCIVA_SYNC_TIMEOUT One sync cycle 10m
ENCIVA_SYNC_LIST_TIMEOUT Project listing 60s

Sync tools run on the host, not in the GDAL container. Missing binaries produce Synchronization runtime is unavailable.

Optional AI authoring

Name Purpose Default
ENCIVA_LLM_ENABLED Enable Transform/Job AI authoring false
ENCIVA_LLM_API_KEY or OPENAI_API_KEY API key unset
ENCIVA_LLM_MODEL Model name gpt-4o-mini
ENCIVA_LLM_BASE_URL OpenAI-compatible base URL https://api.openai.com/v1
ENCIVA_LLM_TIMEOUT Request timeout 120s

Disabled unless enabled and a key is set. Job execution does not call the model.

First administrator

Used only when the user database is empty:

Name Purpose Required
ENCIVA_BOOTSTRAP_ADMIN_USERNAME First username With password
ENCIVA_BOOTSTRAP_ADMIN_PASSWORD First password (no shipped default) Yes, to bootstrap
ENCIVA_BOOTSTRAP_ADMIN_NAME Display name No

The first sign-in asks for a password change.

See also