description |
---|
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.
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.
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.
The DockerHub container registry URI should have one of the two following formats:
<ACCOUNT_NAME>
# or
docker.io/<ACCOUNT_NAME>
# Examples:
zenml
my-username
docker.io/zenml
docker.io/my-username
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
docker.io/<ACCOUNT_NAME>
and get your URI.
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 \
--uri=<REGISTRY_URI>
# 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 .