CLI Overview
mdocker is a single bash entry point that dispatches every verb. This section
documents each verb group in full; start here for the conventions that apply
everywhere.
mdocker up my-project# port pre-flight ok · attached to edge · TLS ready# → https://my-project.coding9.testCommand shape
Section titled “Command shape”Most commands follow the pattern:
mdocker [--json] <verb> [<subverb>] [<project>] [args…] [flags…]Some verbs are grouped (config, profile, terminal, git, share, shop,
db, service, host, edge) and take a subverb, e.g. mdocker config set ….
Global flags
Section titled “Global flags”| Flag | Meaning |
|---|---|
--json |
Emit machine-readable JSON instead of formatted text. Supported by read-only verbs. Can be placed before the verb, e.g. mdocker --json git info aurora. |
Exit codes
Section titled “Exit codes”| Code | Meaning |
|---|---|
0 |
Success. |
1 |
Generic error (an internal die). |
2 |
Port-conflict pre-flight failed — no free replacement port was found. |
See Exit Codes & JSON Output for scripting details.
Conventions
Section titled “Conventions”- Read-only vs. mutating. Diagnostic verbs (
ls,inspect,health,stats,doctor,config show/get,git info,edge status/logs) never change state. - Registry-driven. Verbs that act on a project take its name (from the
registry), not its path. Register a path once with
init. - Overrides, never edits. Mutating verbs rewrite generated files under
~/.config/multi-docker/; your original compose files are never touched.
Verb groups
Section titled “Verb groups”Cookie settings
We only use statistics tools if you allow it. Necessary storage keeps this site working; everything else is off until you decide.
Stores your choice from this dialog in your browser (localStorage). No cookie, no transfer to third parties.
Google Analytics 4 via Google Tag Manager, to measure how the site is used. Loaded only after you allow it.