...
Create Registry Deployment and Generate htpasswd file
Define Local Storage
> vi localStorage.yml
Code Block | ||
---|---|---|
| ||
apiVersion: v1 kind: PersistentVolume metadata: name: local-storage spec: capacity: storage: 10Gi # volumeMode field requires BlockVolume Alpha feature gate to be enabled. volumeMode: Filesystem accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Delete storageClassName: local-storage local: path: /var/k8s/LOCAL_STORAGE nodeAffinity: required: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - k8sworker1 - k8sworker2 - k8sworker3 - docker-for-desktop --- kind: PersistentVolumeClaim apiVersion: v1 metadata: name: local-storage-claim spec: storageClassName: local-storage accessModes: - ReadWriteOnce resources: requests: storage: 3Gi |
...
From master node
kubectl apply -f localstoragelocalStorage.yml
Create Password File
We will generate a password file to use with our registry. The default username password will be test/testpw.
vi htpasswd-generatorvi htpasswdGenerator.yml
Code Block | ||
---|---|---|
| ||
apiVersion: v1 kind: Pod metadata: name: htpasswd-generator spec: containers: - name: htpasswd-generator image: registry:2 command: ["/usr/bin/htpasswd"] args: ["-Bcb", "/auth/htpasswd", "test", "testpw"] volumeMounts: - mountPath: /auth name: local-vol subPath: registry/auth volumes: - name: local-vol persistentVolumeClaim: claimName: local-storage-claim restartPolicy: OnFailure |
kubectl apply -f htpasswd-generatorf htpasswdGenerator.yml
Create Registry Deployment
...