Configuration¶
GeoJibe reads ENCIVA_* environment variables. Typical files:
enciva.envin the working directory/etc/enciva/enciva.envon a packaged hostENCIVA_CONFIGpointing 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:
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.