| {%- from "kubernetes/map.jinja" import common with context -%} |
| apiVersion: v1 |
| kind: ReplicationController |
| metadata: |
| name: registry |
| namespace: kube-system |
| labels: |
| k8s-app: kube-registry |
| version: v0 |
| kubernetes.io/cluster-service: "true" |
| addonmanager.kubernetes.io/mode: Reconcile |
| spec: |
| replicas: 1 |
| selector: |
| k8s-app: kube-registry |
| version: v0 |
| template: |
| metadata: |
| labels: |
| k8s-app: kube-registry |
| version: v0 |
| spec: |
| tolerations: |
| - key: node-role.kubernetes.io/master |
| effect: NoSchedule |
| containers: |
| - name: registry |
| image: registry:2.5.1 |
| resources: |
| limits: |
| cpu: 100m |
| memory: 100Mi |
| requests: |
| cpu: 100m |
| memory: 100Mi |
| env: |
| - name: REGISTRY_HTTP_ADDR |
| value: {{ common.addons.registry.bind.get('host', '0.0.0.0'}}:{{ common.addons.registry.bind.get('port', '5000'}} |
| - name: REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY |
| value: /var/lib/registry |
| ports: |
| - containerPort: {{ common.addons.registry.bind.get('port', '5000') }} |
| name: registry |
| protocol: TCP |
| {%- if common.addons.registry.volume is defined %} |
| volumeMounts: |
| - name: image-store |
| mountPath: /var/lib/registry |
| volumes: |
| - name: image-store |
| {%- if common.addons.registry.volume.get('type', 'emptyDir') %} |
| emptyDir: {} |
| {%- elif common.addons.registry.volume.type == 'hostPath' %} |
| hostPath: |
| path: {{ common.addons.registry.volume.path }} |
| {%- elif common.addons.registry.volume.type == 'glusterfs' %} |
| glusterfs: |
| endpoints: {{ common.addons.registry.volume.endpoints }} |
| path: {{ common.addons.registry.volume.path }} |
| readOnly: {{ common.addons.registry.volume.read_only }} |
| {%- endif %} |
| {%- endif %} |