Skip to content

Environment Variables

Complete reference of all MIRAVO_* environment variables — simulation, MQTT, OPC UA, admin server, persistence, performance tuning, and Docker defaults.

All Miravo configuration can be set through environment variables. CLI flags take precedence over env vars.

VariableDefaultDescription
MIRAVO_NAMETemplate-derivedSimulation name
MIRAVO_TEMPLATEAuto-selectTemplate name or path
MIRAVO_HOME~/.miravoBase directory for local registry and persistence
VariableDefaultDescription
MIRAVO_MQTT_PORT1883Broker port (0 = ephemeral)
MIRAVO_MQTT_HOST127.0.0.1Broker bind host
MIRAVO_MQTT_MODEembeddedembedded or external
MIRAVO_MQTT_URLExternal broker URL (e.g., mqtt://broker:1883)
MIRAVO_MQTT_USERNAMEExternal broker username
MIRAVO_MQTT_PASSWORDExternal broker password
VariableDefaultRangeDescription
MIRAVO_MQTT_DRAIN_BUDGET16384512-65536Max messages per embedded drain cycle
MIRAVO_MQTT_BATCH_SIZE204864-16384Synchronous publishes before yielding
MIRAVO_MQTT_BROKER_CONCURRENCY50010-5000Aedes internal message concurrency
VariableDefaultDescription
MIRAVO_OPCUA_PORT4840OPC UA server port
MIRAVO_OPCUA_HOST0.0.0.0OPC UA server bind host
MIRAVO_OPCUA_WRITE_BUDGET8192Max address space writes per drain cycle (512-65536)

OPC UA env vars are only read when OPC UA is enabled (--opcua).

VariableDefaultDescription
MIRAVO_ADMIN_HOST127.0.0.1Admin HTTP server bind host
MIRAVO_ADMIN_PORT8080Admin HTTP server port
MIRAVO_ADMIN_URLAdmin server URL for client commands (status, inject)
MIRAVO_ADMIN_TOKENBearer token for mutation endpoints. Required when binding to non-loopback.
VariableDefaultDescription
NO_COLORWhen set (any non-empty value), forces plain text output

The Miravo Docker image sets these defaults:

MIRAVO_ADMIN_HOST=0.0.0.0
MIRAVO_ADMIN_PORT=8080

Override them in docker run or Docker Compose:

Terminal window
docker run --rm \
-e MIRAVO_ADMIN_PORT=9090 \
-e MIRAVO_MQTT_PORT=1884 \
-e MIRAVO_NAME=my-sim \
-p 1884:1884 -p 9090:9090 \
amineamaach/miravo:latest