无法在k8s / minikube中从GCR提取图像

时间:2019-07-15 19:15:45

标签: docker kubernetes containers minikube google-container-registry

我的广告连播开始时,它们以Failed to pull image "gcr.io/myproject/backend:staging": rpc error: code = Unknown desc = Error response from daemon: pull access denied for gcr.io/myproject/backend, repository does not exist or may require 'docker login'失败

这是在minikube上发生的,尽管事实是(我相信)我已经在GCP中正确创建了服务帐户,并根据Pod所在的名称空间中的已下载密钥创建了一个Secret,然后为默认服务帐户,即

kubectl --namespace=staging create secret docker-registry gcr-json-key --docker-server=https://gcr.io --docker-username=_json_key --docker-password="$(cat ~/Downloads/gcr-read-key.json)" --docker-email=me@email.com
kubectl --namespace=staging patch serviceaccount default -p '{"imagePullSecrets": [{"name": "gcr-json-key"}]}'

检查GCR图像的Web视图将显示回购和带有指定标签的图像。

我还尝试在部署文件中添加imagePullSecrets条目,但效果不佳。

1 个答案:

答案 0 :(得分:2)

您需要向您的服务帐户添加角色以访问GCS上的存储,最后,注册表位于存储桶的顶部