我正在研究一个位桶管道,用于将图像推送到gc容器注册表。我已创建一个具有存储管理员角色的服务帐户。(bitbucket-authorization@mgcp-xxxx.iam.gserviceaccount.com)
gcloud auth activate-service-account --key-file key.json
gcloud config set project mgcp-xxxx
gcloud auth configure-docker --quiet
docker push eu.gcr.io/mgcp-xxxx/image-name
虽然登录成功,但我得到:项目“mgcp-xxxx”的令牌交换失败。调用方没有权限' storage.buckets.get '。要配置权限,请按照以下网址上的说明操作:https://cloud . Google . com/container-registry/docs/access-control
有人能对我缺少什么提出建议吗?
谢谢!
您需要登录到您的帐户,并将项目设置为您想要的项目。您很有可能只是没有登录。
< code>gcloud授权登录
< code>gcloud配置集项目
过去我有另一个同名不同权限的服务号。在发现服务号被缓存后,我创建了一个不同名称的新服务号,它正在正常推送。
对于所有在这里阅读的人。这里的其他建议对我没有帮助,但我发现云服务构建帐户角色也是必需的。然后storage.buckets。显示
显示。
然而,云服务构建帐户角色添加了更多权限,这些权限只是storage.buckets.get
。确切的权限可以在这里找到。
注意:我很清楚云服务构建帐户角色还添加了< code>storage.objects.get权限。但是,添加< code > roles/storage . object viewer 并没有解决我的问题。尽管它具有< code>storage.objects.get权限。
如果以上不工作,你可能有错误的帐户活动。这可以通过以下方式解决:
gcloud auth activate-service-account --key-file key.json
如果这不起作用,您可能需要设置docker凭证助手:
gcloud auth configure-docker --project <project_name>
最后一点。在设置角色和通过< code>gcloud工具工作之间似乎有一些延迟。然而,这是最小的,想想一分钟不到的范围。
干杯
我无法将docker映像推送到低于错误的工件注册表 登录和拉取工作正常 詹金斯档案: Dockerfile: 我不确定这是怎么回事。我可以在jenkins从属节点上手动推送图像。但使用詹金斯会产生错误 我构建工作的日志 这是我的构建日志中的内容。
我无法将docker映像推送到heroku注册表。 根据docker的说法,我已成功登录: 在那之后,我运行了,我得到了一些令人困惑的错误,说我试图推送到一个不安全的repo,而de-output中的url看起来是安全的(以https开头)。我做错了什么? 我正在使用以下jib配置: jib的Maven输出:build wiht-X:
我正在使用fabric8 maven插件在Google云平台上运行的Jenkins上构建Docker映像。 该插件提供了将图像推送到Docker注册表的功能,但我无法使其与Google容器注册表一起工作,因为它无法进行身份验证。 从我的Jenkins管道中,我可以使用和访问注册表。 对于访问Docker注册中心,Fable8 Maven插件可以与凭据或扩展身份验证一起使用,但这似乎仅适用于AWS。
我一直在努力将docker图像推送到谷歌容器注册表,使用Jenkins管道上的Fab8 maven插件。我检查了stackoverflow上的每个问题,但没有一个解决了我的问题。 这是我的设置: 运行在Google Kubernetes引擎上的Kubernetes集群。我已经部署了一个带有Jenkins服务器的pod,该服务器根据以下自定义图像启动带有Kubernetes CI插件的代理: 这个代
我目前正在开发Quarkus应用程序,因此需要一个CI管道容器注册表。 由于通过docker的集装箱化不起作用(docker daemon-priviliged模式),我想使用Jib,Quarkus已经支持它。 正在处理的命令: 用户名=部署令牌用户名 密码=部署令牌 部署令牌拥有所有权限,所以这不应该是问题所在。 我还尝试了在注册表url中添加令牌的命令的不同变体: https://userna
我很难让这个代码正常工作。我学了很多,但我是个初学者。 这是剧本: //将新事件推送到日历函数pushToCalendar(){//电子表格变量 var sheet=SpreadsheetApp.getActiveSheet(); var range=sheet.getRange(1,1,5,25); var values=range.getValues(); 这里有一个到假人的链接: https