Kubernetestでprivate registryからimageをプルする際には、Secreteを使って認証を行います。
Secreteは以下のコマンドで作成します。
1 2 3 4 5 |
kubectl create secret generic <span style="color: #ff0000;">regcred</span> \ --docker-server=private-registry.xxxxxx --docker-username=hogehoge --docker-password=hogepassword --docker-email=xxxxx@xxxxx.xxx |
参考元:kubernetes.io
赤字の「regcred」はsecretの名称です。
Pod等のyamlから引用する際には以下のように「imagePullSecretes」を使用します。
imagePullSecretsに先ほど作成したsecretの名称「regcred」を指定します。
1 2 3 4 5 6 7 8 9 10 11 |
apiVersion: v1 kind: Pod metadata: name: private-reg spec: containers: - name: my-private-container image: private-registry.xxxxxx/test/my-nginx<your-private-image> imagePullSecrets: - name: regcred </your-private-image> |
これで「private-registry.xxxxxx」というregistryにあるmy-nginx」というimageをpullすることができます。