【问题标题】:Jenkins push image to GCRJenkins 将图像推送到 GCR
【发布时间】:2020-09-21 22:19:06
【问题描述】:

我的要求是从 docker 构建镜像并将镜像推送到 GCR(Google 容器注册表)。 所以我在 Jenkins 中安装了必要的插件。另外,我为此编写了 jenkinsfile。

 withCredentials([file(credentialsId: 'saProject', variable: 'GC_KEY')]){
     sh "gcloud auth activate-service-account --key-file='$GC_KEY'"
 }

我正在尝试像这样访问 GCP,但出现以下错误。

ERROR: Credentials 'saProject' is of type 'Google Service Account from private key' where'org.jenkinsci.plugins.plaincredentials.FileCredentials' was expected Finished: FAILURE

我找不到问题所在。谁能帮忙解决这个问题?

提前致谢

【问题讨论】:

    标签: jenkins jenkins-pipeline


    【解决方案1】:

    这是我们正在做的事情:

    environment {
            GCR_CRED = credentials('GCR_CRED')
            GCR_REPO = "gcr.io/${blahblah}"
        }
    
    sh 'echo "$GCR_CRED" > abc.json'
    sh 'docker login -u _json_key -p "$(cat abc.json)" https://gcr.io'
    sh "docker build . -t ${GCR_REPO}:${IMAGE_TAG}"
    sh "docker push ${GCR_REPO}:${IMAGE_TAG}"
    sh 'docker logout https://gcr.io'
    

    【讨论】:

    • 这解决了您的问题吗?如果是,请您将其标记为答案。
    猜你喜欢
    • 1970-01-01
    • 2020-05-09
    • 1970-01-01
    • 2020-04-22
    • 2018-09-25
    • 2022-11-21
    • 2019-09-24
    • 2022-09-28
    • 2021-12-03
    相关资源
    最近更新 更多