![无法在我的 kubernetes 集群中使用来自 k8s.gcr.io 注册表的镜像](https://linux22.com/image/771424/%E6%97%A0%E6%B3%95%E5%9C%A8%E6%88%91%E7%9A%84%20kubernetes%20%E9%9B%86%E7%BE%A4%E4%B8%AD%E4%BD%BF%E7%94%A8%E6%9D%A5%E8%87%AA%20k8s.gcr.io%20%E6%B3%A8%E5%86%8C%E8%A1%A8%E7%9A%84%E9%95%9C%E5%83%8F.png)
我已经使用 RKE 在裸机 ubuntu 机器上设置了一个 k8s 集群。使用来自 docker.io 的镜像创建部署没有问题。
但我无法创建基于 gcr.io 的部署:
Warning Failed 10s kubelet Failed to pull image "k8s.gcr.io/ingress-nginx/kube-webhook-certgen:v1.0@sha256:f3b6b39a6062328c095337b4cadcefd1612348fdd5190b1dcbcb9b9e90bd8068": rpc er │
ror: code = Unknown desc = Error response from daemon: Get "https://k8s.gcr.io/v2/": dial tcp: lookup k8s.gcr.io: Temporary failure in name resolution │
Warning Failed 10s kubelet Error: ErrImagePull
为什么 k8s.gcr.io 被阻止,在哪里可以启用它?
答案1
“如果您想使用 Google Container Registry,则必须使用服务帐户 JSON 密钥文件。不要忘记向包含您的 Container Registry 映像的 Google Cloud Storage 存储桶授予正确的权限。
根据您存储图像的区域指定注册表地址。使用 _json_key 作为用户名,并使用服务帐户 JSON 密钥文件的完整内容作为密码。