我想用’eu.gcr.io’(同一个项目)中存在的新图像更新我在kubernetes上的部署,我之前已经这样做了。但现在豆荚无法拉动图像,因为它们不是……
根据你的说法
我刚刚发现我仍然可以拉动和部署旧图像。但是我构建的每一个新图像都不能被kubernetes pod所吸引。
我假设您可以通过命令拉出docker图像,但不能kubectl。
docker pull eu.gcr.io/my-gcp-project/my-image:v1.009
所以参考这篇文章 将Google容器注册表与Kubernetes一起使用 ,验证是拉码头图像之间的差异 的 码头工人拉 强> 和 的 kubectl 强> 。
您是否向GKE提供了访问令牌?
kubectl create secret docker-registry gcr-access-token \ --docker-server=eu.gcr.io \ --docker-username=oauth2accesstoken \ --docker-password="$(gcloud auth print-access-token)" \ --docker-email=any@valid.email
您需要创建一个docker-registry秘密并在pod定义中使用imagePullSecrets:
kubectl create secret docker-registry regcred --docker-server=<your-registry-server> --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email>
apiVersion: v1 kind: Pod metadata: name: private-reg spec: containers: - name: private-reg-container image: <your-private-image> imagePullSecrets: - name: regcred
看到这个 指南 欲获得更多信息