在gcloud项目中共享dockerregistry映像

我们希望使用一个谷歌项目共享包含跨项目的微服务的docker图像。

我想我可以使用kubernetes运行命令,并从当前项目以外的项目中拉出一个图像:

kubectl run gdrive-service --image=us.gcr.io/foo/gdrive-service 

我的用户凭据可以访问这两个项目。 但是,似乎运行命令只能​​从当前项目中拉出法师。

有没有这样做的方法? 这似乎是一个明显的用例。

这里有几个选项。

  1. 使用这里描述的_json_keyvalidation与Kubernetes拉秘密。

  2. 这也描述了如何在项目中添加机器人,而不需要拉动机密。

在我的答案中,我介绍了通过在包含registry的项目下授予GKE服务帐户用户Storage Object Viewer权限来执行此操作的方法。