Installation
This page walks you through installing Mango AI Center (MAC) and pulling its container
images. After this page you will have the mac CLI on each host and the images cached
locally — but no services are started yet. See
Deployment Modes for the actual start step.
Prerequisites
Each Master and Agent host needs:
- Linux x86_64 — Ubuntu 22.04 / 24.04 / 26.04 are tested and supported
- Linux kernel 5.4 or higher
- Docker 20.10+ with the
composeplugin (Docker Compose v2) - Outbound network access to MangoBoost's image registry (or a mirrored internal registry)
- Root privileges for the initial install; afterwards
macruns withoutsudoif your user is in thedockergroup
For agents to monitor GPUs and DPUs, the corresponding vendor drivers must already be installed on the host (NVIDIA driver + DCGM, ROCm, MangoBoost driver). MAC does not install GPU drivers. Refer to the relevant vendor guide — for MangoBoost devices see the Mango SDK documentation.
Install Docker
~$ sudo apt update
~$ sudo apt install docker-compose-v2
~$ docker compose version
Docker Compose version v2.x.x
Run mac Without sudo
Add your user to the docker group so the CLI does not require root:
~$ sudo usermod -aG docker $USER
~$ newgrp docker # or log out and back in
All examples in this guide assume mac is invoked without sudo.
Get Repository Credentials
Both the Debian package and the container images are hosted on MangoBoost's public Artifactory:
| Artifact | URL |
|---|---|
| Debian package | https://repo.mangoboost.io/artifactory/public-debian |
| Container images | repo.mangoboost.io/public-docker/mac |
External access to repo.mangoboost.io is API-only — the web UI is blocked. The same
guest account authenticates both apt and docker; you cannot browse the repository
from a browser.
Contact contact@mangoboost.io to receive your partner guest username and password, then
use them in the two steps below.
Install the MAC Package
The MAC Debian package is the same on every node — Master and Agents alike — and the
role is selected at start time via mac start <mode>.
1. Add the APT auth file
Store the guest credentials in an APT auth file (readable by root only). APT will pick
them up automatically for every request to repo.mangoboost.io:
~$ sudo install -d -m 0755 /etc/apt/auth.conf.d
~$ sudo tee /etc/apt/auth.conf.d/mango-sdk.conf >/dev/null <<EOF
machine repo.mangoboost.io
login <guest-username>
password <guest-password>
EOF
~$ sudo chmod 600 /etc/apt/auth.conf.d/mango-sdk.conf
2. Trust the repository signing key
~$ curl -fsSL \
https://repo.mangoboost.io/artifactory/api/security/keypair/mb-gpg/public \
| gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/mango-sdk.gpg >/dev/null
3. Add the APT source
The format depends on the host's Ubuntu release.
- Ubuntu 22.04
- Ubuntu 24.04
- Ubuntu 26.04
~$ echo "deb https://repo.mangoboost.io/artifactory/public-debian jammy universe" \
| sudo tee /etc/apt/sources.list.d/mango-sdk.list
~$ sudo tee /etc/apt/sources.list.d/mango-sdk.sources >/dev/null <<EOF
Enabled: yes
Types: deb
URIs: https://repo.mangoboost.io/artifactory/public-debian
Suites: noble
Components: universe
Signed-By: /etc/apt/trusted.gpg.d/mango-sdk.gpg
EOF
~$ sudo tee /etc/apt/sources.list.d/mango-sdk.sources >/dev/null <<EOF
Enabled: yes
Types: deb
URIs: https://repo.mangoboost.io/artifactory/public-debian
Suites: resolute
Components: universe
Signed-By: /etc/apt/trusted.gpg.d/mango-sdk.gpg
EOF
4. Install
~$ sudo apt update
~$ sudo apt install mango-ai-center
~$ mac --help
If the APT repo is unreachable from the host, ask MangoBoost for a standalone .deb and
install with sudo dpkg -i mango-ai-center_<version>_amd64.deb.
The package installs the mac CLI at /usr/bin/mac, bash completion, and the docker
compose files and default env at /etc/mango/mac/.
Pull the Container Images
Authenticate Docker with the same guest credentials, then pull:
~$ docker login repo.mangoboost.io # username + password from contact@mangoboost.io
~$ mac pull all # or: mac pull master / mac pull agent
docker login writes the credentials to ~/.docker/config.json; subsequent docker pull
and mac pull calls reuse them automatically.
mac pull reads MAC_REGISTRY from the installed env file. The default points at
repo.mangoboost.io/public-docker/mac; override it with
mac env set MAC_REGISTRY=<host>/<path> if you use a private mirror.
Network and Firewall Ports
| Direction | Ports | Purpose |
|---|---|---|
| User → Master | 23000, 28080, 29090 | Web dashboard, REST API, Prometheus |
| Master → Agent | 28000, 29101–29500 | mango-sdk-agent (28000), sys-exporter (29101), bmc-agent (29102), sys-manager (29103), dcgm (29150), rocm (29200), sw-exporter (29300), nic-exporter (29500) |
| Agent → Master | 28080, 29210 | Registration (api-server), Loki log push |
| Master → Switches | 22, 161 | SSH and SNMP |
| User → Master (TLS) | 23443, 28443 | HTTPS dashboard and API (when MAC_TLS_ENABLED=true) |
Next Step
Continue to Deployment Modes to actually start MAC.