Registries and credentials

The registry belongs to the app. Public: the console resolves the tag to a digest itself and checks that the digest you give, if any, matches. Private: the console never pulls, so you paste the digest and every supervisor verifies the manifest and each layer against it.

# what to paste into a release from a private registry
fleetwide digest ghcr.io/acme/my-app:1.4.2
# a multi-platform tag prints the index digest: one release, every architecture

# or, with Docker:
docker buildx imagetools inspect ghcr.io/acme/my-app:1.4.2 --format '{{json .Manifest.Digest}}'

Containers pull layers straight from your registry. A login they need lives on the fleet, under its Credentials tab, and is delivered over mTLS only to that fleet’s containers. Four kinds: a registry login (username and password or token for one registry host), AWS ECR and Google Artifact Registry (one per fleet, matching every registry of that cloud), and a git token for one git host, used for git-sourced assets. A secret you store is encrypted at rest and never shown again; or leave it on the customer side and name the container environment variable the supervisor reads it from.

Amazon ECR and Google Artifact Registry log in with what the container already has: a task, instance or IRSA role, Workload Identity or the node service account. Record that as the credential’s mode and nothing is stored; or give the supervisor an access key or a service-account key and it exchanges it for a registry login itself. A mounted Docker config (~/.docker/config.json) works too. The fleet page says which hosts still need a login before a release can be pulled.

A fleet's Credentials tab listing an AWS ECR credential in identity mode and a registry login for ghcr.io with its secret stored encrypted
Credentials: by the container's own identity, or a stored secret, per fleet.

Advanced registry options. Under Advanced on the app (and on an asset item) a registry can be marked plain HTTP, for a local or air-gapped relay with no TLS, or skip TLS certificate verification, for a registry with a self-signed certificate. Both apply to every release of the app and are carried to the supervisor with the release; a release can also set them on its own. Neither affects how layers are verified: every pull still checks each layer against the release's digest.

The New app panel with its Advanced section open, showing the Plain HTTP registry and Skip TLS certificate verification options
Advanced registry options: plain HTTP, or a self-signed certificate.
fleetwide

Over-the-air updates and fleet management for Docker containers. The supervisor runs inside the container; nothing on the host.

© 2026 Fleetwide