Skip to content

Instantly share code, notes, and snippets.

@h3nryza
Last active August 30, 2018 05:41
Show Gist options
  • Save h3nryza/9cb7392294988be1391f96834a4b081f to your computer and use it in GitHub Desktop.
Save h3nryza/9cb7392294988be1391f96834a4b081f to your computer and use it in GitHub Desktop.
Creating a local Docker Registry on local Kubernetes installation
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: slow
provisioner: Local
parameters:
type: pd-standard
---
kind: PersistentVolume
apiVersion: v1
metadata:
name: docker-reg
labels:
type: local
spec:
storageClassName: slow
capacity:
storage: 5Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/mnt/disks/dockerRegistry"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: docker-reg
spec:
accessModes:
- ReadWriteOnce
storageClassName: slow
resources:
requests:
storage: 5Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: docker-registry
labels:
app: docker-registry
spec:
replicas: 1
selector:
matchLabels:
app: docker-registry
template:
metadata:
labels:
app: docker-registry
spec:
volumes:
- name: registry-data
persistentVolumeClaim:
claimName: docker-reg
containers:
- name: registry
image: registry:2
imagePullPolicy: Always
ports:
- containerPort: 5000
volumeMounts:
- mountPath: "/var/lib/registry"
name: registry-data
---
apiVersion: v1
kind: Service
metadata:
labels:
app: docker-registry
name: docker-registry
namespace: default
spec:
clusterIP: 10.97.210.140
externalTrafficPolicy: Cluster
ports:
- nodePort: 32421
port: 5000
protocol: TCP
targetPort: 5000
selector:
app: docker-registry
sessionAffinity: None
type: NodePort
status:
loadBalancer: {}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment