Skip to main content

Air-gapped installs

Miabi runs without internet access. Nothing it needs to deploy apps, serve traffic or validate a licence depends on a connection to the Miabi project. A few features reach out by default; this page lists each one and the setting that turns it off.

Connections Miabi makes on its own​

DestinationPurposeHow to turn it off
https://versions.miabi.ioDaily update check for Miabi, the node agent, the runner and the gatewayMIABI_UPDATE_CHECK=false
https://miabi.ioAnonymous installation statisticsMIABI_TELEMETRY=false or DO_NOT_TRACK=1
https://marketplace.miabi.ioMarketplace template catalog syncMIABI_MARKETPLACE_URL= (set, but empty)
Docker Hub and other registriesPulling platform, database and application imagesA registry mirror, or images pre-loaded on each host
Let's EncryptAutomatic TLS certificatesAn internal ACME issuer in the gateway config, or uploaded certificates
Public DNSDomain verificationForce verify the domain as a platform admin

Each of these fails quietly when it can't connect: the update check records the error for admins, telemetry drops the event, and the marketplace keeps the templates built into the image. Turning them off avoids the attempts and their log lines.

Licence validation is offline. An Enterprise licence is verified locally against a key built into Miabi, so it needs no connection.

Example​

For a stack installed with get.miabi.io, add the variables under env: in the manifest (/etc/miabi/miabi.yaml) and re-apply it:

env:
MIABI_UPDATE_CHECK: "false"
MIABI_TELEMETRY: "false"
MIABI_MARKETPLACE_URL: ""

With Docker Compose, set the same variables in .env:

MIABI_UPDATE_CHECK=false
MIABI_TELEMETRY=false
MIABI_MARKETPLACE_URL=

Installing without internet access​

The installer downloads a few things. On a disconnected host, provide each one yourself:

DownloadDefault sourceOffline alternative
The install scripthttps://get.miabi.ioDownload it on a connected machine and copy it over
The miabi CLIGitHub releasesMIABI_CLI_BASE_URL pointing at an internal artifact store
The latest Miabi version, for miabi setup/upgrade run without --versionhttps://versions.miabi.ioPass --version, or set MIABI_RELEASE_API to a mirror. The install script pins the version itself
Docker EngineThe Docker package repositoriesInstall Docker yourself and set MIABI_SKIP_DOCKER_INSTALL=1
Container imagesDocker HubLoad them with docker load, or pull through an internal registry

A fresh install needs miabi/miabi and jkaninda/goma-gateway at the versions pinned at the top of the install script, plus postgres:17-alpine and redis:7-alpine. Remote nodes and CI runners also need miabi/agent and miabi/runner.

See Installation for every installer option.

Connections you configure​

These connect only when you set them up, and only to the address you give:

Point each at an internal service, or leave it unconfigured.