Skip to content

config

mdocker config reads and writes ~/.config/multi-docker/config.env.

Dump the current config (read-only).

mdocker config show
mdocker config show
mdocker config show --json

Read a single key (read-only).

mdocker config get
mdocker config get BASE_DOMAIN

Write a key. Setting BASE_DOMAIN/BASE_DOMAINS triggers a full cascade — regenerating the certificate, DNS resolver, edge stack and all project overrides.

mdocker config set
mdocker config set BASE_DOMAIN my-company.test
mdocker config set EDGE_NETWORK multi-docker-edge

See Changing the Base Domain.

Manage the list of base domains. Every subverb regenerates the cert, DNS, edge stack and all projects.

mdocker config domain
mdocker config domain list
mdocker config domain add <domain>
mdocker config domain remove <domain>
mdocker config domain primary <domain> # move to front (make primary)
Subverb Purpose
list List base domains (--json supported).
add Append a base domain.
remove Remove a base domain.
primary Move a domain to the front so it becomes primary.

See Multiple Base Domains.

Manage the domain of the shared Mailcatcher (key MD_MAIL_DOMAIN, default mail.<primary-base-domain>). The domain serves the web UI via Traefik and works as an SMTP host from inside project containers (network alias on the edge network).

mdocker config mail
mdocker config mail # show domain, UI URL and SMTP URL
mdocker config mail set post.coding9.test
mdocker config mail reset # back to mail.<primary>
Subverb Purpose
show Show the current domain, its source (default/custom), UI and SMTP URL (--json supported).
set Set the domain; re-renders the edge override and recreates the edge stack if running.
reset Remove the key — back to the derived default.

set warns when the domain is not exactly one label below a configured base domain, because the wildcard certificate and the macOS resolver would not cover it.

See Catching Outgoing Mail.