kg.dev/<PROJECT_ID>/<REPOSITORY_NAME>

# Examples:europe-west1-docker.pkg.dev/zenml/my-repo

southamerica-east1-docker.pkg.dev/zenml/zenml-test

asia-docker.pkg.dev/my-project/another-repo

To figure out the URI for your registry:

Go here and select the repository that you want to use to store Docker images. If you don't have a repository yet, take a look at the deployment section.

On the top, click the copy button to copy the full repository URL.

Infrastructure Deployment

A GCP Container Registry can be deployed directly from the ZenML CLI:

zenml container-registry deploy gcp_container_registry --flavor=gcp --provider=gcp ...

You can pass other configurations specific to the stack components as key-value arguments. If you don't provide a name, a random one is generated for you. For more information about how to work use the CLI for this, please refer to the dedicated documentation section.

How to use it

To use the GCP 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=gcp \

--uri=<REGISTRY_URI>

# Add the container registry to the active stack

zenml stack update -c <NAME>

You also need to set up authentication required to log in to the container registry.

Authentication Methods

Integrating and using a GCP Container Registry in your pipelines is not possible without employing some form of authentication. If you're looking for a quick way to get started locally, you can use the Local Authentication method. However, the recommended way to authenticate to the GCP cloud platform is through a GCP Service Connector. This is particularly useful if you are configuring ZenML stacks that combine the GCP Container Registry with other remote stack components also running in GCP.