无法在我的 kubernetes 集群中使用来自 k8s.gcr.io 注册表的镜像

无法在我的 kubernetes 集群中使用来自 k8s.gcr.io 注册表的镜像

我已经使用 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

根据 Rancher

“如果您想使用 Google Container Registry,则必须使用服务帐户 JSON 密钥文件。不要忘记向包含您的 Container Registry 映像的 Google Cloud Storage 存储桶授予正确的权限。

根据您存储图像的区域指定注册表地址。使用 _json_key 作为用户名,并使用服务帐户 JSON 密钥文件的完整内容作为密码。

相关内容