将 Jenkins 连接到 GCP 容器注册表

Connect Jenkins to GCP container registry

我正在尝试将 jenkins 连接到 GCP 上的容器注册表。 我遵循了一些示例,但我被一个简单而愚蠢的事情所阻止。

我的 jenkins 文件中有这个阶段:

    stage('Push image') {
      docker.withRegistry('https://eu.gcr.io', 'gcr:[my-credentials]') {
        app.push("${env.BUILD_NUMBER}")
        app.push("latest")
      }
}

但我不知道放在那里的是哪个凭证...

我尝试在 GCP 上创建 -> API&Service -> Credentials -> Create Credential -> Service Account Key

下载 json 并将其添加到 Jenkins,在我使用的 piplene 字段上:项目名称、凭证 ID 等等,但它不起作用。

最后我找到了解决办法。

  • 首先你必须停止实例。
  • 打开实例设置
  • 编辑实例
  • 在设置列表的末尾更改云 API 访问范围:授予对您需要的资源的访问权限。