Storing container images in DockerHub.

The DockerHub container registry is a container registry flavor that comes built-in with ZenML and uses DockerHub to store container images.

When to use it

You should use the DockerHub container registry if:

  • one or more components of your stack need to pull or push container images.

  • you have a DockerHub account. If you're not using DockerHub, take a look at the other container registry flavors.

How to deploy it

To use the DockerHub container registry, all you need to do is create a DockerHub account.

When this container registry is used in a ZenML stack, the Docker images that are built will be published in a ** public** repository and everyone will be able to pull your images. If you want to use a private repository instead, you'll have to create a private repository on the website before running the pipeline. The repository name depends on the remote orchestrator or step operator that you're using in your stack.

How to find the registry URI

The DockerHub container registry URI should have one of the two following formats:


# Examples:

To figure out the URI for your registry:

  • Find out the account name of your DockerHub account.

  • Use the account name to fill the template<ACCOUNT_NAME> and get your URI.

How to use it

To use the Azure container registry, we need:

  • Docker installed and running.

  • The registry URI. Check out the previous section on the URI format and how to get the URI for your registry.

We can then register the container registry and use it in our active stack:

zenml container-registry register <NAME> \
    --flavor=dockerhub \

# Add the container registry to the active stack
zenml stack update -c <NAME>

Additionally, we'll need to log in to the container registry so Docker can pull and push images. This will require your DockerHub account name and either your password or preferably a personal access token.

docker login

For more information and a full list of configurable attributes of the dockerhub container registry, check out the SDK Docs .

Last updated