Configuration reference
Every key in the committed templates, plus the run-time variables the nornir-docker launchers
read. Templates are in nornir-docker/deploy/examples/ unless a path is given. Viking service
keys (SQL connection strings, identity clients, segmentation models) are in the Viking
deploy/examples/ templates and the Viking deployment docs (proxy,
TLS, identity, segmentation).
“Required” means stack.ps1 (or the launcher) stops without it. Blank defaults mean unset.
Naming rules
Pattern |
Meaning |
|---|---|
|
Nornir behaviour (build, dashboard, MQTT, mounts). |
|
Machine-level Docker settings for this host (layout root, host stacks, |
|
Viking deployment settings (domain, host names, repository path). |
|
The shared certificate. |
|
A host filesystem path used as a bind source ( |
|
A DNS name. |
Stack keys |
kebab-case; the same string is the registry key, the |
Run/_host/host.env
Template example.host.env. Machine settings for every stack on the host; no secrets.
Key |
Default |
Required |
Consumer / meaning |
|---|---|---|---|
|
|
yes |
Layout root (Host layout). Filled in by |
|
checkout containing |
yes |
nornir checkout on this host; forwarding launchers and |
|
Viking hosts |
Viking checkout; without it the Viking registry is not loaded. |
|
|
role preset |
yes |
Comma list of stacks this host runs ( |
|
|
Viking hosts |
Parent domain; every |
|
|
Override for one service name. Same for |
|
|
|
LAN name or IP of |
|
|
|
LAN name or IP of |
|
|
the IIS host |
|
|
|
|
||
|
|
Viking hosts |
|
|
letsencrypt, acme-eab |
ACME account contact for expiry notices. |
|
|
|
Folder under |
|
|
every |
Comma list the certificate must cover ( |
|
|
acme-eab |
ACME directory URL from Pitt IT. The EAB key id and HMAC key go in
|
|
|
|
|
|
|
empty |
Password for |
|
|
|
GHCR namespace for |
Run/_host/secrets/secrets.env
Template example.host.secrets.env. Mode 600 on Linux.
Key |
Default |
Required |
Consumer / meaning |
|---|---|---|---|
|
GitHub fine-grained PAT (Accounts and tokens). The launchers never load it into the
host process; it reaches containers only through |
Run/_host/targets.psd1
Template example.targets.psd1; a PowerShell data file, one entry per target under Targets.
Field |
Meaning |
|---|---|
|
|
|
Extra |
|
|
|
That host’s |
|
Stacks |
|
|
|
|
|
|
Run/nornir-build/nornir-build.run.env
Template example.nornir-build.run.env. Read by start-nornir-build.ps1.
Key |
Default |
Required |
Consumer / meaning |
|---|---|---|---|
|
|
|
|
|
|
|
|
|
auto |
|
|
|
|
Publish build progress to the dashboard broker. |
|
|
auto |
Broker host seen from the container. Unset: join |
|
|
|
Broker port. |
|
|
|
Docker network the build container joins to reach Mosquitto by name. |
|
|
|
||
|
|
Port for |
|
|
Extra |
Run/nornir-dashboard/nornir-dashboard.run.env
Template example.nornir-dashboard.run.env (start-dashboard.ps1 still reads the legacy
dashboard.run.env). Consumed by compose.dashboard.yaml. Full table: Build dashboard (nornir-dashboard).
Key |
Default |
Meaning |
|---|---|---|
|
|
Host address the UI port 8087 is published on. |
|
|
Host address the broker port 1883 is published on (template and compose default). |
|
Required before widening the bind host; put it in |
|
|
|
|
|
|
Max SQLite events per run ( |
|
|
Delete runs idle this many days ( |
|
|
Seconds without events before a run shows as stale. |
|
|
Build context for the dashboard image (set by |
Run/nornir-net-mounts/
Shared by start-nornir-build.ps1, cursor-dev net mounts, and the worker’s
-DevParityMounts. Format details: Build appliance (nornir-build).
File / key |
Template |
Meaning |
|---|---|---|
|
|
Tab-separated |
|
|
|
|
|
Optional overrides below. |
|
|
Host folder holding |
|
|
Host folder of |
|
unset (commented |
MQTT for containers started with this file. Leave |
Inside the containers (set by the launchers, read by mount-network-shares.sh):
NORNIR_NET_MOUNTS=1 (path B enabled), NORNIR_NET_MOUNTS_MANIFEST
(/etc/nornir-net-mounts/nas-mounts.tsv), NORNIR_NET_CREDS_SRC
(/run/secrets/net-creds), NORNIR_NET_CREDS_SECURE (/run/nornir-cifs-creds, the
0600 copy mount.cifs uses), NORNIR_LOG_ROOT (/var/log/nornir in nornir-build).
cursor-dev (Run/nornir-dev/.env bridged to nornir-docker/.env)
Template nornir-docker/dev/example.cursor-dev.run.env. Compose substitutes these and also
passes the whole file into the container (env_file). See Programmer shell and Cursor worker.
Key |
Default |
Meaning |
|---|---|---|
|
required |
Host path of |
|
empty placeholder |
Large repro corpus, read-only at |
|
|
Writable |
|
|
Read-only |
|
|
Redirects import caches out of the read-only test input. |
|
|
Bind source for |
|
|
Clone source for an empty |
|
unset |
|
|
unset |
|
|
Needed for |
|
|
|
Dashboard broker on the host. |
|
AssembleTiles worker counts. |
|
|
Optional, for private submodules or rate limits. |
Cursor worker (Run/nornir-cursor-worker/nornir-cursor-worker.run.env)
Template nornir-docker/example.nornir-cursor-worker.run.env.
Key |
Default |
Meaning |
|---|---|---|
|
required |
Cursor API key for |
|
Passed to the container only via |
|
|
|
|
|
|
Clone source. |
|
unset |
|
|
unset |
|
|
unset |
|
|
discovery |
Explicit path of this file for |
Other launcher variables
Variable |
Default |
Consumer |
|---|---|---|
|
|
|
|
|
|
|
from |
|
Viking keys that stack.ps1 checks
The Viking registry marks these as required; set them in the Viking stack’s run env (templates in
<Viking>/deploy/examples/):
viking-proxy:VIKING_DOMAIN,VIKING_COMPUTE_HOST,VIKING_IIS_HOST(inhost.envonweb, above).viking-certs:VIKING_DOMAIN,TLS_MODE,TLS_CERT_NAME.viking-identity:SQL_SERVER_HOST,SQL_SERVER_USER,SQL_SERVER_PASSWORD,SQL_SERVER_IDENTITY_DB,SQL_SERVER_CONFIG_DB,SQL_SERVER_GRANTS_DB,IDENTITY_SERVER_SECRET,IDENTITY_SERVER_API_SECRET,IDENTITY_SERVER_MVC_SECRET,IDENTITY_SERVER_RO_VIKING_SECRET; secret filessecrets.json,Duende_License.key.viking-annotation:ConnectionStrings__AnnotationConnection,IdentityServer__Endpoint,IdentityServer__ClientId,IdentityServer__ClientSecret.viking-corrections:IdentityServer__Endpoint,IdentityServer__ClientSecret,CorrectionService__Name.viking-iis:VIKING_IIS_DEPLOY_ROOT.
Deprecated names
Old |
New |
Still read? |
|---|---|---|
|
|
yes, with a warning |
|
|
yes ( |
|
|
|
|
|
set |
|
|
yes, as a fallback |
|
|
yes, as fallbacks |
|
|
removed |
NORNIR_MONOREPO_ROOT inside containers (cursor-dev-entry.sh, the image build) is a
container path and is unaffected.