digitalocean_container_registry_docker_credentials

Generated on 20 May 2025 from Terraform version v2.54.0

Get Docker credentials for your DigitalOcean container registry.

An error is triggered if the provided container registry name does not exist.

Example Usage

Basic Example

Get the container registry:

resource "digitalocean_container_registry_docker_credentials" "example" {
  registry_name = "example"
}

Docker Provider Example

Use the endpoint and docker_credentials with the Docker provider:

data "digitalocean_container_registry" "example" {
  name = "example"
}

resource "digitalocean_container_registry_docker_credentials" "example" {
  registry_name = "example"
}

provider "docker" {
  host = "unix://var/run/docker.sock"

  registry_auth {
    address             = data.digitalocean_container_registry.example.server_url
    config_file_content = digitalocean_container_registry_docker_credentials.example.docker_credentials
  }
}

Kubernetes Example

Combined with the Kubernetes Provider’s kubernetes_secret resource, you can access the registry from inside your cluster:

resource "digitalocean_container_registry_docker_credentials" "example" {
  registry_name = "example"
}

data "digitalocean_kubernetes_cluster" "example" {
  name = "prod-cluster-01"
}

provider "kubernetes" {
  host  = data.digitalocean_kubernetes_cluster.example.endpoint
  token = data.digitalocean_kubernetes_cluster.example.kube_config[0].token
  cluster_ca_certificate = base64decode(
    data.digitalocean_kubernetes_cluster.example.kube_config[0].cluster_ca_certificate
  )
}

resource "kubernetes_secret" "example" {
  metadata {
    name = "docker-cfg"
  }

  data = {
    ".dockerconfigjson" = digitalocean_container_registry_docker_credentials.example.docker_credentials
  }

  type = "kubernetes.io/dockerconfigjson"
}

Argument Reference

The following arguments are supported:

  • registry_name - (Required) The name of the container registry.
  • write - (Optional) Allow for write access to the container registry. Defaults to false.
  • expiry_seconds - (Optional) The amount of time to pass before the Docker credentials expire in seconds. Defaults to 1576800000, or roughly 50 years. Must be greater than 0 and less than 1576800000.

Attributes Reference

The following attributes are exported:

  • id: The ID of the tag. This is the same as the name.
  • registry_name - The name of the container registry
  • docker_credentials: Credentials for the container registry.
  • expiry_seconds: Number of seconds after creation for token to expire.
  • credential_expiration_time: The date and time the registry access token will expire.

We can't find any results for your search.

Try using different keywords or simplifying your search terms.