登录 Docker 镜像仓库
在个人电脑上,要想拉取私有镜像必须在镜像仓库上进行身份验证。
docker login
当出现提示时,输入你的 Docker ID 和登录凭证(访问令牌、 或 Docker ID 的密码)。
登录过程会创建或更新保存有授权令牌的 config.json 文件。
查看 config.json 文件:
cat ~/.docker/config.json
创建一个基于现有凭证的 Secret
如果你已经运行了 docker login 命令,你可以复制该镜像仓库的凭证到 Kubernetes:
kubectl create secret generic regcred \
--from-file=.dockerconfigjson=<path/to/.docker/config.json> \
--type=kubernetes.io/dockerconfigjson
检查 Secret regcred
kubectl get secret regcred --output=yaml
将 Secret 数据转换为可读格式:
kubectl get secret regcred --output="jsonpath={.data.\.dockerconfigjson}" | base64 --decode
创建一个使用你的 Secret 的 Pod
apiVersion: v1
kind: Pod
metadata:
name: private-reg
spec:
containers:
- name: private-reg-container
image: <your-private-image>
imagePullSecrets:
- name: regcred