Skip to main content

Service Control

mac <command> --help lists flags. pull, build, start, stop, and restart require all, master, or agent.

mac pull​

Pull role images, tagged with the CLI version unless MAC_VERSION overrides it. Inspect release-specific references with mac env and mac images.

mac pull all
mac pull master
mac pull agent

--local builds MAC images from source and pulls external image-only dependencies.

mac build​

Build MAC images from a checkout; external image-only dependencies are not pulled. Set MAC_CONFIG_DIR to the checkout's deploy/ directory first.

mac build all
mac build master
mac build agent

mac images​

List required/present images for the running role, or all if stopped. GPU images follow detected vendors.

mac images all --check
mac images agent --all-profiles
mac images --prune # list obsolete MAC images
mac images --prune --yes # remove the listed obsolete images

--check fails for missing images. Presence does not prove layer usability; verify offline bundles with the loader.

mac load​

Load without registry access. Manifests verify digests and image usability with docker create --pull=never. The loader checks all mode for this host’s GPU profile; use a complete bundle even on agents.

mac load /opt/mango-ai-center-offline-<version>-ubuntu-amd64
mac load /opt/mango-ai-center-offline-<version>-ubuntu-amd64 --verify-only

Image archive paths also work. --verify-only checks images already in Docker without loading. See Offline Installation.

mac start​

Start a role; all combines master/agent. Agents need MASTER_IP and the master’s token. Enrollment uses the master-routed address unless MAC_NODE_IP_PREFIX selects one.

mac start all --wait
mac start master --wait --timeout 300
mac start agent --wait

Missing images are pulled, or fail under MAC_OFFLINE=true; load them first. --local builds; --registry uses published images. --wait checks running/healthy containers and master/all API→Prometheus through /health/detailed, sharing --timeout (180 seconds). Failure is nonzero. The probe uses local plain HTTP even with TLS; exporter samples and log delivery need separate verification.

mac stop​

Remove the selected role's containers while keeping volumes and images.

mac stop master
mac stop agent
mac stop agent --keep-registration
mac stop all

Stop deregisters agents unless --keep-registration is set. Offline nodes without deregistration remain in inventory.

mac restart​

Recreate the role after configuration changes; start flags also apply.

mac restart all --wait
mac restart agent --wait

mac status​

List local MAC containers, status, and published ports.

mac logs​

mac logs # last 20 lines from each container
mac logs api-server # last 100 lines from this service
mac logs api-server -f # follow; --follow also works

Accepts service/container names, including mango-sdk-agent/mac-sdk-agent. Node logs are in Monitoring → System log; container logs in MAC log → Services.

mac info​

Show CLI/running version, role, master address, host/kernel, Docker/Compose, config path, and GPU vendors. mac version shows only CLI; pinned images can differ.

mac test​

Check a running cluster through the master’s sanity API. sanity is the default/only subcommand; no user login is needed.

mac test
mac test sanity --expect all # verify this node has every declared service
mac test sanity --master <master-ip>

Run on master or set node-wide MASTER_IP on agents. --master overrides one invocation; shell MASTER_IP does not override files. --expect master|agent|all adds local missing-service checks.

[PASS] accepts running Docker healthy/starting, or running without a healthcheck. starting is startup grace, not a successful probe. [SKIP] means no declared healthcheck; it does not verify behavior. [FAIL] marks missing, stopped, unhealthy, or unreachable services. Check targets, inventory, and logs separately.

CodeMeaning
0All checks passed
1Checks failed, or expected local services are missing
2Master unreachable
3This node passed; only other nodes failed

mac version​

mac version # mac -v / mac --version also work

mac clean​

Delete MAC containers, data volumes (users, enrollment, alerts, metrics, logs), and local images. Pulled images and mac-network remain. Confirmation is required; use --yes without a terminal only for intended deletion.

mac clean
mac clean --purge

--purge also deletes declared volumes, networking, earlier MAC images, and Compose images including external dependencies. Images used by another container remain. With --user-config, it deletes ~/.mac; check whether the directory is shared.

warning

Cleaning destroys persistent data. Preserve API/Prometheus/Loki volumes to retain state. For data-preserving removal, stop and uninstall without clean.

mac llmboost detect​

mac llmboost detect
mac llmboost detect --json

Probe listening ports for OpenAI-compatible model catalogs and suggest LLMBOOST_HOST_PORTS. Nothing is saved. Review results; unrelated serving workloads may be discovered.