簡體   English   中英

Jenkins Pipeline 推送 Docker 鏡像

[英]Jenkins Pipeline push the Docker Image

我試圖在構建源代碼后推送我的 docker 鏡像,當 jenkins 將鏡像推送到 docker Hub Registry 時,我遇到了以下錯誤。

流水線腳本

stage('Build Docker Image') {
        container('docker') {
            echo 'docker'
            sh "docker build -t ${image_name} ."
            sh "docker tag ${image_name} ${image_name}:${image_tag}"          
        }
      } 

    stage('Push Docker Image') {
        container('docker') {
        withCredentials([string(credentialsId: 'DOCKER_HUB_CREDENTIALS', variable: 'DOCKER_HUB_CREDENTIALS')]) {
        sh "docker login -u user-name -p ${DOCKER_HUB_CREDENTIALS}"
          }
          sh "docker push ${image_name}:${image_tag}"
       }
    }

詹金斯日志

[Pipeline] // container
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Push Docker Image)
[Pipeline] container
[Pipeline] {
[Pipeline] withCredentials
Masking supported pattern matches of $DOCKER_HUB_CREDENTIALS
[Pipeline] {
[Pipeline] sh
+ docker login -u user-name -p ****
Login Succeeded
[Pipeline] }
[Pipeline] // withCredentials
[Pipeline] sh
+ docker push devopsimage.azure/frontend:bug-fix-2cbb925d
The push refers to repository [devopsimage.azure/frontend]
Get https://devopsimage.azure/v2/: dial tcp: lookup devopsimage.azure.io: Temporary failure in name resolution
[Pipeline] }
[Pipeline] // container
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] }
[Pipeline] // podTemplate
[Pipeline] End of Pipeline
ERROR: script returned exit code 1
Finished: FAILURE

你能請任何人幫助我嗎?

如果您的鏡像名稱中有 dot(.) 在斜杠之前,docker 會將其視為注冊表名稱。 所以devopsimage.azure push 試圖推送到名為devopsimage.azure注冊表。 如果您確實想推送到 Docker Hub,請從映像名稱中刪除點。 如果您想推送到名為devopsimage.azure注冊表,則在從構建機器解析此注冊表時存在 DNS 問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM