一尘不染

在kubernetes插件/ jenkins中从gcr中提取docker镜像的问题

jenkins

我有一个运行着jenkins
master的gke集群。我正在尝试开始构建。我正在使用由kubernetes插件(pod模板)配置的从属管道。我在gcr(私有访问权)中发布了我的jenkins奴隶的自定义图片。我已将我的gcr的凭据(Google服务帐户)添加到jenkins。但是,jenkins
/
kubernetes无法启动从站,因为无法从gcr提取映像。当我使用公共图像(jnlp)时,没有问题。但是当我尝试使用来自gcr的图像时,kubernetes说:

Failed to pull image "eu.gcr.io/<project-id>/<image name>:<tag>": rpc error: code = Unknown desc = Error response from daemon: unauthorized: You don't have the needed permissions to perform this operation, and you may have invalid credentials. To authenticate your request, follow the steps in: https://cloud.google.com/container-registry/docs/advanced-authentication

尽管pod与gcr在同一项目中运行。

即使我使用来自gcr的映像,我也希望詹金斯能够启动从属服务器。


阅读 389

收藏
2020-07-25

共1个答案

一尘不染

即使pod在同一项目的群集中运行,默认情况下也不进行身份验证。

据说您已经设置了服务帐户,并且我假设Jenkins服务器中有一个提供的密钥

如果您使用的是Google
OAuth凭据插件
,则还可以使用Google
Container Registry
Auth插件
私有GCR存储库进行身份验证并提取图像

2020-07-25