Databús is configured entirely through environment variables loaded from .env (development) or .env + .env.prod (production). The .env.example file at the repository root is the canonical reference — copy it to .env and fill in values before starting the stack.
NanoMQ broker hostname. Resolved inside the compose network.
MQTT_PORT
1883
No
Plain MQTT port. Traefik terminates TLS on 8883 in production and forwards plain MQTT to NanoMQ on 1883.
MQTT_CONSUMER_ENABLED
false
Critical
Master switch for the MQTT consumer bootstep. Set trueonly on the realtime-engine worker. See Telemetry ingestion.
Do not set MQTT_CONSUMER_ENABLED=true on multiple workers
Each worker that has this variable enabled will subscribe to the broker and process every MQTT message. That means double-processing all telemetry. The compose files are pre-configured correctly; only change this if you know what you are doing.
These variables control which host ports the compose services bind to in development. They have no effect in production (no ports are exposed to the host in compose.prod.yml).
GeoDjango requires native GDAL and GEOS libraries. On macOS with Homebrew:
brewinstallgdalgeos
# Add to .env or shell profile:GDAL_LIBRARY_PATH=/opt/homebrew/lib/libgdal.dylib
GEOS_LIBRARY_PATH=/opt/homebrew/lib/libgeos_c.dylib
On Apple Silicon, the Homebrew prefix is /opt/homebrew; on Intel it is /usr/local.