stable/docker-registry/README.md
As of Nov 13, 2020, charts in this repo will no longer be updated. For more information, see the Helm Charts Deprecation and Archive Notice, and Update.
This directory contains a Kubernetes chart to deploy a private Docker Registry.
This chart is deprecated and no longer supported.
This chart will do the following:
To install the chart, use the following:
$ helm install stable/docker-registry
The following table lists the configurable parameters of the docker-registry chart and their default values.
| Parameter | Description | Default |
|---|---|---|
image.pullPolicy | Container pull policy | IfNotPresent |
image.repository | Container image to use | registry |
image.tag | Container image tag to deploy | 2.7.1 |
imagePullSecrets | Specify image pull secrets | nil (does not add image pull secrets to deployed pods) |
persistence.accessMode | Access mode to use for PVC | ReadWriteOnce |
persistence.enabled | Whether to use a PVC for the Docker storage | false |
persistence.deleteEnabled | Enable the deletion of image blobs and manifests by digest | nil |
persistence.size | Amount of space to claim for PVC | 10Gi |
persistence.storageClass | Storage Class to use for PVC | - |
persistence.existingClaim | Name of an existing PVC to use for config | nil |
service.port | TCP port on which the service is exposed | 5000 |
service.type | service type | ClusterIP |
service.clusterIP | if service.type is ClusterIP and this is non-empty, sets the cluster IP of the service | nil |
service.nodePort | if service.type is NodePort and this is non-empty, sets the node port of the service | nil |
| `service.loadBalancerIP | if service.type is LoadBalancer and this is non-empty, sets the loadBalancerIP of the service | nil |
service.loadBalancerSourceRanges | if service.type is LoadBalancer and this is non-empty, sets the loadBalancerSourceRanges of the service | nil |
replicaCount | k8s replicas | 1 |
updateStrategy | update strategy for deployment | {} |
podAnnotations | Annotations for pod | {} |
podLabels | Labels for pod | {} |
podDisruptionBudget | Pod disruption budget | {} |
resources.limits.cpu | Container requested CPU | nil |
resources.limits.memory | Container requested memory | nil |
priorityClassName | priorityClassName | "" |
storage | Storage system to use | filesystem |
tlsSecretName | Name of secret for TLS certs | nil |
secrets.htpasswd | Htpasswd authentication | nil |
secrets.s3.accessKey | Access Key for S3 configuration | nil |
secrets.s3.secretKey | Secret Key for S3 configuration | nil |
secrets.swift.username | Username for Swift configuration | nil |
secrets.swift.password | Password for Swift configuration | nil |
haSharedSecret | Shared secret for Registry | nil |
configData | Configuration hash for docker | nil |
s3.region | S3 region | nil |
s3.regionEndpoint | S3 region endpoint | nil |
s3.bucket | S3 bucket name | nil |
s3.encrypt | Store images in encrypted format | nil |
s3.secure | Use HTTPS | nil |
swift.authurl | Swift authurl | nil |
swift.container | Swift container | nil |
nodeSelector | node labels for pod assignment | {} |
affinity | affinity settings | {} |
tolerations | pod tolerations | [] |
ingress.enabled | If true, Ingress will be created | false |
ingress.annotations | Ingress annotations | {} |
ingress.labels | Ingress labels | {} |
ingress.path | Ingress service path | / |
ingress.hosts | Ingress hostnames | [] |
ingress.tls | Ingress TLS configuration (YAML) | [] |
extraVolumeMounts | Additional volumeMounts to the registry container | [] |
extraVolumes | Additional volumes to the pod | [] |
Specify each parameter using the --set key=value[,key=value] argument to
helm install.
To generate htpasswd file, run this docker command:
docker run --entrypoint htpasswd registry:2 -Bbn user password > ./htpasswd.