Skip to main content

Overview

The Docker Registry is available on Cyberwave Enterprise plans. Contact us at info@cyberwave.com to enable it for your organization.
Cyberwave hosts a private Docker registry at registry.cyberwave.com. You use it to store and distribute the container images that run on your robots and cloud nodes โ€” drivers, ML models, custom ROS packages, and anything else your edge devices need. Authentication uses the same CYBERWAVE_API_KEY you already use for the REST API and MQTT. Your workspace role determines what you can do:
There are no separate registry passwords. The same API key and workspace membership that govern REST and MQTT access also govern registry access.

Setup

1

Install the Cyberwave CLI

If you havenโ€™t already, install the CLI. It includes the Docker credential helper.
2

Set your API key

Use the same environment variable the SDK and CLI already read:
3

Configure Docker (automatic)

The CLI configures Docker to use the Cyberwave credential helper for registry.cyberwave.com:
This adds the following to ~/.docker/config.json:
After this, docker pull and docker push authenticate transparently whenever the image name starts with registry.cyberwave.com.
If you prefer not to install the credential helper, you can log in explicitly:
docker login <server> targets that specific registry, not Docker Hub. Credentials are cached locally until they expire or you run docker logout registry.cyberwave.com.

Pulling images

Public images

Public images (e.g. Cyberwave-maintained drivers) require no authentication:
For production, pin by digest instead of tag:

Private images

Private images require authentication. Your workspace role must grant at least READER access:
If you have access, the pull succeeds. If not, it fails with 403 โ€” the same behavior as trying to access a REST endpoint or MQTT topic without the right role.

Pushing images

To push, your workspace role must grant at least WRITER access.
1

Build your image

Tag it with the full registry path. The path includes your workspace or project namespace:
2

Push

If the credential helper is configured, no separate login step is needed. The Cyberwave Token Service validates your API key, checks your workspace role, and authorizes the push.
Version tags (e.g. v1.2.3) are immutable โ€” once pushed, they cannot be overwritten. Use mutable tags like dev or latest during development.

Using registry images on edge devices

Reference registry images in your cyberwave.yml driver configuration:
Edge Core pulls the image automatically when the twin connects. If the image is private, the edge device authenticates using the API key configured during device setup.

Tagging conventions


CI/CD integration

In GitHub Actions or other CI systems, authenticate using a Cyberwave service API key:
The CI API key is a normal Cyberwave API key whose workspace membership grants WRITER access to the target project.

Architecture

The registry uses Harbor with a Cyberwave-managed token service. When Docker needs to authenticate, the flow is: The token service is a standard Docker Registry v2 token endpoint backed by the Cyberwave auth and ACL system. Harbor handles image storage, vulnerability scanning, replication, and retention policies.