How to Integrate with a DigitalOcean Container Registry

Last verified 5 Oct 2026

DigitalOcean Kubernetes (DOKS) is a Kubernetes service with a fully managed control plane, high availability, and autoscaling. DOKS integrates with standard Kubernetes toolchains and DigitalOcean’s load balancers, volumes, CPU and GPU Droplets, API, and CLI.

On DigitalOcean, you can integrate your Kubernetes cluster with a container registry via the control panel. This process requires you to have an existing container registry. If you don’t have an existing registry, first create one.

To integrate a cluster, go to the control panel and click the Kubernetes cluster you want to integrate. Then, click the Settings tab, scroll down to the DigitalOcean Container Registry Integration section, and click Edit to the right.

Check your container registry and click Save to confirm your change.

Warning

Integrating a cluster with one registry lets the cluster pull images from every registry your DigitalOcean account owns, because the integration credentials apply to the whole account.

For instructions on integrating a Kubernetes cluster and container registry via generated secrets or kubectl, see our guide.

If your cluster pulls the same images across many nodes, you can also enable the peer-to-peer OCI registry plugin to mirror image layers between nodes and reduce the number of pulls that leave the cluster.

Add a Container Registry to a Cluster Using Automation

How to Add a Container Registry Using the DigitalOcean CLI
  1. Install doctl, the official DigitalOcean CLI.

  2. Create a personal access token and save it for use with doctl.

  3. Use the token to grant doctl access to your DigitalOcean account.

    doctl auth init
  4. Finally, run doctl kubernetes cluster registry add. Basic usage looks like this, but you can read the usage docs for more details:

    doctl kubernetes cluster registry add <cluster-id|cluster-name> <cluster-id|cluster-name> [flags]

    The following example adds container registry support to a cluster named example-cluster:

    doctl kubernetes cluster registry add example-cluster
How to Add a Container Registry Using the DigitalOcean API

Create a personal access token and save it for use with the API.

cURL

Send a POST request to https://api.digitalocean.com/v2/kubernetes/registry.

Using cURL:

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
  -d '{"cluster_uuids": ["bd5f5959-5e1e-4205-a714-a914373942af", "50c2f44c-011d-493e-aee5-361a4a0d1844"]}' \
  "https://api.digitalocean.com/v2/kubernetes/registry"

Go

Using Godo, the official DigitalOcean API client for Go:

import (
    "context"
    "os"

    "github.com/digitalocean/godo"
)

func main() {
    token := os.Getenv("DIGITALOCEAN_TOKEN")

    client := godo.NewFromToken(token)
    ctx := context.TODO()

    _, err := client.Kubernetes.AddRegistry(ctx, &godo.KubernetesClusterRegistryRequest{ClusterUUIDs: []string{"bd5f5959-5e1e-4205-a714-a914373942af"}})
}

Python

Using PyDo, the official DigitalOcean API client for Python:

import os
from pydo import Client

client = Client(token=os.environ.get("DIGITALOCEAN_TOKEN"))

req = {
  "cluster_uuids": [
    "bd5f5959-5e1e-4205-a714-a914373942af",
    "50c2f44c-011d-493e-aee5-361a4a0d1844"
  ]
}

resp = client.kubernetes.add_registry(body=req)

We can't find any results for your search.

Try using different keywords or simplifying your search terms.