Commit ba28335c by Guangbo Chen

Bump docker-registry to v1.8.1

parent ebeb53fe
apiVersion: v1
description: A Helm chart for Docker Registry
name: docker-registry
version: 1.6.1
appVersion: 2.6.2
version: 1.8.1
appVersion: 2.7.1
home: https://hub.docker.com/_/registry/
icon: file://../logo.png
sources:
......
......@@ -7,10 +7,11 @@ their default values.
|:----------------------------|:-------------------------------------------------------------------------------------------|:----------------|
| `image.pullPolicy` | Container pull policy | `IfNotPresent` |
| `image.repository` | Container image to use | `registry` |
| `image.tag` | Container image tag to deploy | `2.6.2` |
| `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` |
......@@ -21,6 +22,7 @@ their default values.
| `replicaCount` | k8s replicas | `1` |
| `updateStrategy` | update strategy for deployment | `{}` |
| `podAnnotations` | Annotations for pod | `{}` |
| `podLabels` | Labels for pod | `{}` |
| `resources.limits.cpu` | Container requested CPU | `nil` |
| `resources.limits.memory` | Container requested memory | `nil` |
| `priorityClassName ` | priorityClassName | `""` |
......@@ -34,6 +36,7 @@ their default values.
| `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` |
......@@ -43,6 +46,7 @@ their default values.
| `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) | `[]` |
......
# Docker Registry Helm Chart
This directory contains a Kubernetes chart to deploy a private Docker Registry.
## Prerequisites Details
* PV support on underlying infrastructure (if persistence is required)
## Chart Details
This chart will do the following:
* Implement a Docker registry deployment
\ No newline at end of file
......@@ -34,7 +34,7 @@ questions:
required: true
group: "Storage System Settings"
show_if: "storage=s3"
- variable: secret.s3.accessKey
- variable: secrets.s3.accessKey
default: ""
description: "Access Key for S3 configuration "
type: string
......@@ -42,7 +42,7 @@ questions:
required: true
group: "Storage System Settings"
show_if: "storage=s3"
- variable: secret.s3.secretKey
- variable: secrets.s3.secretKey
default: ""
description: "Secret Key for S3 configuration "
type: password
......@@ -67,7 +67,7 @@ questions:
group: "Storage System Settings"
show_if: "storage=s3"
# azure configuration
- variable: secret.azure.accountName
- variable: secrets.azure.accountName
default: ""
description: "Azure storage account name"
type: string
......@@ -75,7 +75,7 @@ questions:
required: true
group: "Storage System Settings"
show_if: "storage=azure"
- variable: secret.azure.accountKey
- variable: secrets.azure.accountKey
default: ""
description: "Azure storage account key"
type: password
......@@ -83,7 +83,7 @@ questions:
required: true
group: "Storage System Settings"
show_if: "storage=azure"
- variable: secret.azure.container
- variable: secrets.azure.container
default: ""
description: "Azure storage container name"
type: string
......@@ -108,7 +108,7 @@ questions:
required: true
group: "Storage System Settings"
show_if: "storage=swift"
- variable: secret.swift.username
- variable: secrets.swift.username
default: ""
description: "Username for Swift configuration"
type: string
......@@ -116,7 +116,7 @@ questions:
required: true
group: "Storage System Settings"
show_if: "storage=swift"
- variable: secret.swift.password
- variable: secrets.swift.password
default: ""
description: "Password for Swift configuration"
type: password
......@@ -134,7 +134,7 @@ questions:
group: "Persistent Storage"
subquestions:
- variable: persistence.size
default: "10Gi"
default: "50Gi"
description: "Docker registry Registry Persistent Volume Size"
type: string
label: Docker Registry Volume Size
......
......@@ -15,5 +15,5 @@
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "docker-registry.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl port-forward $POD_NAME 8080:{{ .Values.service.port }}
kubectl -n {{ .Release.Namespace }} port-forward $POD_NAME 8080:5000
{{- end }}
apiVersion: extensions/v1beta1
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ template "docker-registry.fullname" . }}
......@@ -14,11 +14,18 @@ spec:
{{ toYaml .Values.updateStrategy | indent 4 }}
{{- end }}
minReadySeconds: 5
selector:
matchLabels:
app: {{ template "docker-registry.name" . }}
release: {{ .Release.Name }}
template:
metadata:
labels:
app: {{ template "docker-registry.name" . }}
release: {{ .Release.Name }}
{{- if .Values.podLabels }}
{{ toYaml .Values.podLabels | indent 8 }}
{{- end }}
annotations:
checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }}
{{- if $.Values.podAnnotations }}
......@@ -46,21 +53,21 @@ spec:
- serve
- /etc/docker/registry/config.yml
ports:
- containerPort: {{ .Values.service.port }}
- containerPort: 5000
livenessProbe:
httpGet:
{{- if .Values.tlsSecretName }}
scheme: HTTPS
{{- end }}
path: /
port: {{ .Values.service.port }}
port: 5000
readinessProbe:
httpGet:
{{- if .Values.tlsSecretName }}
scheme: HTTPS
{{- end }}
path: /
port: {{ .Values.service.port }}
port: 5000
resources:
{{ toYaml .Values.resources | indent 12 }}
env:
......@@ -117,6 +124,10 @@ spec:
{{- end }}
- name: REGISTRY_STORAGE_S3_REGION
value: {{ required ".Values.s3.region is required" .Values.s3.region }}
{{- if .Values.s3.regionEndpoint }}
- name: REGISTRY_STORAGE_S3_REGIONENDPOINT
value: {{ .Values.s3.regionEndpoint }}
{{- end }}
- name: REGISTRY_STORAGE_S3_BUCKET
value: {{ required ".Values.s3.bucket is required" .Values.s3.bucket }}
{{- if .Values.s3.encrypt }}
......@@ -143,6 +154,10 @@ spec:
- name: REGISTRY_STORAGE_SWIFT_CONTAINER
value: {{ required ".Values.swift.container is required" .Values.swift.container }}
{{- end }}
{{- if .Values.persistence.deleteEnabled }}
- name: REGISTRY_STORAGE_DELETE_ENABLED
value: "true"
{{- end }}
volumeMounts:
{{- if .Values.secrets.htpasswd }}
- name: auth
......
......@@ -11,6 +11,9 @@ metadata:
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
{{- if .Values.ingress.labels }}
{{ toYaml .Values.ingress.labels | indent 4 }}
{{- end }}
annotations:
{{- range $key, $value := .Values.ingress.annotations }}
{{ $key }}: {{ $value | quote }}
......
......@@ -20,7 +20,7 @@ spec:
- port: {{ .Values.service.port }}
protocol: TCP
name: {{ .Values.service.name }}
targetPort: {{ .Values.service.port }}
targetPort: 5000
{{- if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.nodePort))) }}
nodePort: {{ .Values.service.nodePort }}
{{- end }}
......
......@@ -10,10 +10,11 @@ updateStrategy:
# maxUnavailable: 0
podAnnotations: {}
podLabels: {}
image:
repository: registry
tag: 2.6.2
repository: ranchercharts/registry
tag: 2.7.1
pullPolicy: IfNotPresent
# imagePullSecrets:
# - name: docker
......@@ -34,6 +35,7 @@ ingress:
annotations:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
labels: {}
tls:
# Secrets must be manually created in the namespace.
# - secretName: chart-example-tls
......@@ -81,6 +83,7 @@ secrets:
# Options for s3 storage type:
# s3:
# region: us-east-1
# regionEndpoint: s3.us-east-1.amazonaws.com
# bucket: my-bucket
# encrypt: false
# secure: true
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment