gpt4 book ai didi

jenkins-pipeline - 无法将图像从 Jenkins Pipeline 推送到 GCR

转载 作者:行者123 更新时间:2023-12-04 01:56:31 27 4
gpt4 key购买 nike

我在运行 Jenkins 服务器(在 docker 容器内)的谷歌云中运行虚拟机。我正在尝试为我的应用程序构建一个 Docker 镜像,并使用 Jenkins 管道将其推送到 Google Container Registry。

  • 我安装了所有必需的 Jenkins 插件:
    谷歌 OAuth 凭据插件,
    Docker 管道插件,
    Google Container Registry Auth 插件
  • 创建了具有存储管理员和对象查看者角色的服务帐户 + key 。下载了json文件。
  • 使用 google 项目名称作为 id 和 json 键在 Jenkins 中创建了一个凭证。
  • 我的构建管道代码如下所示:
    stage('Build Image') {
    app = docker.build("<gcp-project-id>/<myproject>")
    }
  • 我的构建管道代码如下所示:
    stage('Push Image') {
    docker.withRegistry('https://us.gcr.io', 'gcr:<gcp-project-id>') {
    app.push("${commit_id}")
    app.push("latest")
    }

    }

  • 但是,构建在最后一步失败并出现以下错误:
    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

    我花了几个小时试图弄清楚这一点。任何帮助将不胜感激!

    最佳答案

    我有一个相同的问题。我发现 Jenkins 似乎没有使用这些凭据:在使用情况下,它说“此凭据尚未记录为在任何地方使用。” .与 gcloud util 一起使用时,服务帐户和 key 工作正常,因此问题出在 Jenkins 的某个地方。

    关于jenkins-pipeline - 无法将图像从 Jenkins Pipeline 推送到 GCR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50166732/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com