Skip to main content
Version: v3.9.0

Offline images

An offline image pulls container images on the operator machine, copies them to remote Edgelet nodes, and creates or updates a catalog item on registry id 2 (local).

Fields are on OfflineImage fields. Air-gapped install context is on Airgap deployment.

This kind is not a long-lived Controller object. Re-running deploy repeats the pull, the transfer, and the catalog upsert.

When to use it​

Use it to preload images before a microservice references the catalog name, including air-gapped nodes. Targets are remote Edgelet nodes only. kind: LocalAgent is an error. SSH is required on each node. The Controller must be reachable so the catalog row can be written.

The operator machine needs a path to the registry for the first pull, unless the local cache is already filled. Set spec.auth when the pull needs credentials. Username and password are both required when that block is present.

What deploy does​

potctl deploy -f offline.yaml -n my-ecn --transfer-pool 4

The run validates the name, at least one architecture image, and at least one remote node. It pulls or reuses the cache under ~/.iofog/v3, transfers to the nodes, then upserts the catalog item with registry id 2.

FlagEffect
--no-cacheSkip the downloaded image cache for this run.
--transfer-pool NMaximum concurrent node transfers. Default 2.

If a catalog item with spec.name already exists, deploy asks before it overwrites the images.

offline.yaml
apiVersion: datasance.com/v3
kind: OfflineImage
metadata:
name: reader
namespace: my-ecn
spec:
name: reader
amd64: ghcr.io/datasance/reader:1.0.0
arm64: ghcr.io/datasance/reader:1.0.0
agent:
- edge-01

metadata.name and spec.name should match. spec.name is lowercase alphanumeric. Each node receives the image that matches its arch. A missing arch field for that node fails the run.

How a microservice uses it​

get catalog shows the new row. Its registry id is 2. Set images.catalogId to that id, or refer to the catalog name. Inline images on the same node can use registry alias local. See Microservice fields and Catalog microservices.

CLI​

There is no get offline-image, describe, attach, or detach for this kind. Confirm the catalog row:

potctl get catalog -n my-ecn

Re-running deploy -f repeats the transfer.

Console​

Offline images are a CLI flow. The console chapter has no OfflineImage screen. After deploy, the catalog row is under Config → Catalog Microservices. See Catalog and templates.

Group 3See anything wrong with the document? Help us improve it!