---
id: "docker-registry"
type: "component"
kind: "container-registry"
provider: "default"
category: "data"
docs: "https://distribution.github.io/distribution/about/configuration/"
url: "https://localhost:3000/catalogue/components/docker-registry"
---

# CNCF Distribution

The reference OCI registry implementation behind the registry image.

| | |
|---|---|
| Provider | [default](https://localhost:3000/catalogue?provider=default) |
| Kind | [Container registry](https://localhost:3000/catalogue/kinds/container-registry) |
| Category | Data |
| Official docs | [https://distribution.github.io/distribution/about/configuration/](https://distribution.github.io/distribution/about/configuration/) |

## Properties

| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| `authenticationConfigured` | boolean | — | no | false | inherited |
| `deleteEnabled` | boolean | — | no | false | inherited |
| `geoReplicated` | boolean | — | no | false | **false** |
| `httpPort` | integer | — | no | 5000 | inherited |
| `imageScanning` | boolean | — | no | — | **false** |
| `immutableTags` | boolean | — | no | — | inherited |
| `managed` | boolean | — | no | false | **false** |
| `retentionDays` | integer | — | no | — | inherited |
| `staticCredentials` | boolean | — | no | — | inherited |
| `storageDriver` | enum | `filesystem`, `s3`, `azure`, `gcs`, `swift`, `oss` | no | — | inherited |
| `tlsConfigured` | boolean | — | no | false | inherited |
| `visibility` | enum | `private`, `public` | no | — | inherited |

Bold values are the ones this component pins.

## Rules that apply · 0

No rule selects this kind or its category.

## Other products of the same kind · 14

- [Container Registry](https://localhost:3000/catalogue/components/alibaba-container-registry.md) `alibaba-container-registry` — alibabacloud
- [Amazon Elastic Container Registry](https://localhost:3000/catalogue/components/aws-ecr.md) `aws-ecr` — aws
- [Amazon Elastic Container Registry Public](https://localhost:3000/catalogue/components/aws-ecr-public.md) `aws-ecr-public` — aws
- [Azure Container Registry](https://localhost:3000/catalogue/components/azure-container-registry.md) `azure-container-registry` — azure
- [Generic container registry](https://localhost:3000/catalogue/components/container-registry.md) `container-registry` — default
- [Docker Hub](https://localhost:3000/catalogue/components/docker-hub.md) `docker-hub` — default
- [GitLab Container Registry](https://localhost:3000/catalogue/components/gitlab-registry.md) `gitlab-registry` — default
- [Harbor](https://localhost:3000/catalogue/components/harbor.md) `harbor` — default
- [Red Hat Quay](https://localhost:3000/catalogue/components/quay.md) `quay` — default
- [zot](https://localhost:3000/catalogue/components/zot.md) `zot` — default
- [DigitalOcean Container Registry](https://localhost:3000/catalogue/components/digitalocean-container-registry.md) `digitalocean-container-registry` — digitalocean
- [Artifact Registry](https://localhost:3000/catalogue/components/google-artifact-registry.md) `google-artifact-registry` — gcp
- [IBM Cloud Container Registry](https://localhost:3000/catalogue/components/ibm-container-registry.md) `ibm-container-registry` — ibm
- [OCI Container Registry](https://localhost:3000/catalogue/components/oci-container-registry.md) `oci-container-registry` — oci

## Use it in a design

```yaml
nodes:
  - { id: "docker-registry", component: "docker-registry" }
```

## Source (`component` YAML, verbatim)

```yaml
# yaml-language-server: $schema=../../schema/component.schema.json
# CNCF Distribution, the reference OCI registry implementation shipped as the registry image.
# Per "Configuration": storage is the one required section, auth and tls are optional so a registry with
# the sample configuration accepts anonymous clear-text traffic on localhost:5000, and the delete
# structure "defaults to false", so manifests cannot be removed until it is switched on.
schemaVersion: "1"
type: "component"
id: "docker-registry"
kind: "container-registry"
provider: "default"
docs: "https://distribution.github.io/distribution/about/configuration/"
defaults:
  managed: false
  imageScanning: false
  geoReplicated: false
properties:
  httpPort:
    type: "integer"
    default: 5000
  storageDriver:
    type: "enum"
    values: ["filesystem", "s3", "azure", "gcs", "swift", "oss"]
  authenticationConfigured:
    type: "boolean"
    default: false
  tlsConfigured:
    type: "boolean"
    default: false
  deleteEnabled:
    type: "boolean"
    default: false
```

Human page: https://localhost:3000/catalogue/components/docker-registry
