Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Jenkins Scripted Pipeline Job failing for docker login

Jenkins Version - 2.164.1
Jenkins Docker Plugin Version – 1.1.6
Docker Version - 18.09.3, build 774a1f4

Problem:-

I have below code in my Jenkins scripted pipeline section. I have added my private Docker registry URL and Credentials added under Manage Jenkins --> Configure System. But pipeline Job is failing for docker login.

Error form Jenkins - ERROR: docker login failed

Code:-

stage('Build') { 
  withDockerRegistry(credentialsId: 'docker-reg-credentails', url: 'http://registryhub:8081/nexus/') {
    image = docker.image('registryhub:8085/ubuntu-16:1')
    image.pull()
    docker.image('registryhub:8085/ubuntu-16:1').inside {   
      sh 'cat /etc/issue'
    }
  }
}
like image 850
user4948798 Avatar asked Nov 06 '22 19:11

user4948798


1 Answers

Inside Stage, do something like below:

    script
        {
        def server = Nexus.server 'docker-reg-credentails'
        def buildRegistry = [ url: 'http://registryhub:8081/nexus/', credentialsId: 'docker-reg-credentails' ]
        def rtDocker = Nexus.docker server: server
            withDockerRegistry(registry: buildRegistry ) 
            {
                sh 'docker pull hello-world' 
                sh 'docker tag hello-world:latest hello-world:latest2' 
                rtDocker.addProperty("status", "stable") 
                def buildInfo = rtDocker.push 'hello-world:latest', 'docker-local'
                // Step 4: Publish the build-info to Nexus: server.publishBuildInfo buildInfo

                server.publishBuildInfo buildInfo
            }
            }
like image 200
piyush sachdeva Avatar answered Nov 14 '22 22:11

piyush sachdeva