apiVersion: apps/v1 kind: Deployment metadata: name: registry namespace: registry labels: app: registry spec: replicas: 1 selector: matchLabels: app: registry template: metadata: labels: app: registry spec: containers: - name: registry image: registry:2 ports: - containerPort: 5000 volumeMounts: - name: data mountPath: /var/lib/registry resources: requests: memory: 64Mi cpu: 50m limits: memory: 256Mi cpu: 200m volumes: - name: data persistentVolumeClaim: claimName: registry-data --- apiVersion: v1 kind: Service metadata: name: registry namespace: registry spec: selector: app: registry ports: - port: 5000 targetPort: 5000 type: ClusterIP --- apiVersion: apps/v1 kind: Deployment metadata: name: registry-ui namespace: registry labels: app: registry-ui spec: replicas: 1 selector: matchLabels: app: registry-ui template: metadata: labels: app: registry-ui spec: containers: - name: registry-ui image: joxit/docker-registry-ui:latest ports: - containerPort: 80 env: - name: REGISTRY_TITLE value: Nook Registry - name: NGINX_PROXY_PASS_URL value: http://registry:5000 - name: SINGLE_REGISTRY value: "true" - name: SHOW_CONTENT_DIGEST value: "true" - name: DELETE_IMAGES value: "true" resources: requests: memory: 32Mi cpu: 20m limits: memory: 64Mi cpu: 100m --- apiVersion: v1 kind: Service metadata: name: registry-ui namespace: registry spec: selector: app: registry-ui ports: - port: 80 targetPort: 80 type: ClusterIP