Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-30200

Nullpointer exception while connecting to a docker container

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • docker-plugin
    • None
    • Linux, Docker plugin, docker 1.8.1

      Jenkins ver. 1.626
      Docker plugin version: 0.12.1

      Container settings:
      Docker command: /sbin/init 3 (without custom command also crashes)
      Hostname: debian8_32bit_32bit_INIT3_CONTAINER
      DNS: <Some ip address>
      Volumes: /sys/fs/cgroup:/sys/fs/cgroup:ro
      Environment: container=docker
      Privileged : true
      Remote filing root: /home/jenkins
      labels: debian8_32bit_32bit_INIT3_CONTAINER

      Port: 22

      Problem:
      Crash when running a job. The container is started within docker server but jenkins cannot see it. Jenkins logs state:

      Aug 28, 2015 2:29:20 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
      INFORMATION: Asked to provision 1 slave(s) for: debian8_32bit_32bit_INIT3_CONTAINER
      Aug 28, 2015 2:29:20 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
      INFORMATION: Will provision 'debian8_32bit_32bit', for label: 'debian8_32bit_32bit_INIT3_CONTAINER', in cloud: 'docker-main'
      Aug 28, 2015 2:29:20 PM com.nirima.jenkins.plugins.docker.DockerCloud addProvisionedSlave
      INFORMATION: Provisioning 'debian8_32bit_32bit' number '0' on 'docker-main'; Total containers: '0'
      Aug 28, 2015 2:29:20 PM hudson.slaves.NodeProvisioner$StandardStrategyImpl apply
      INFORMATION: Started provisioning Image of debian8_32bit_32bit from docker-main with 1 executors. Remaining excess workload: 0
      Aug 28, 2015 2:29:20 PM com.nirima.jenkins.plugins.docker.DockerCloud provisionWithWait
      INFORMATION: Trying to run container for debian8_32bit_32bit
      Aug 28, 2015 2:29:21 PM com.nirima.jenkins.plugins.docker.DockerCloud$1 call
      SCHWERWIEGEND: Error in provisioning; template='DockerTemplate{configVersion=2, labelString='debian8_32bit_32bit_INIT3_CONTAINER', launcher=com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher@1cc6aff2, remoteFsMapping='', remoteFs='/home/jenkins', instanceCap=1, mode=NORMAL, retentionStrategy=com.nirima.jenkins.plugins.docker.strategy.DockerOnceRetentionStrategy@52fd763e, numExecutors=1, dockerTemplateBase=DockerTemplateBase

      {image=debian8_32bit_32bit}

      , removeVolumes=false, pullStrategy=PULL_LATEST}' for cloud='docker-main'
      java.lang.NullPointerException
      at com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher.getPortUtils(DockerComputerSSHLauncher.java:118)
      at com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher.waitUp(DockerComputerSSHLauncher.java:77)
      at com.nirima.jenkins.plugins.docker.DockerCloud.provisionWithWait(DockerCloud.java:364)
      at com.nirima.jenkins.plugins.docker.DockerCloud.access$000(DockerCloud.java:55)
      at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:219)
      at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:216)
      at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46)
      at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:745)

      Aug 28, 2015 2:29:30 PM hudson.slaves.NodeProvisioner$2 run
      WARNUNG: Provisioned slave Image of debian8_32bit_32bit failed to launch
      java.lang.NullPointerException
      at com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher.getPortUtils(DockerComputerSSHLauncher.java:118)
      at com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher.waitUp(DockerComputerSSHLauncher.java:77)
      at com.nirima.jenkins.plugins.docker.DockerCloud.provisionWithWait(DockerCloud.java:364)
      at com.nirima.jenkins.plugins.docker.DockerCloud.access$000(DockerCloud.java:55)
      at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:219)
      at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:216)
      at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46)
      at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:745)

      Aug 28, 2015 2:29:30 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
      INFORMATION: Asked to provision 1 slave(s) for: debian8_32bit_32bit_INIT3_CONTAINER
      Aug 28, 2015 2:29:30 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
      INFORMATION: Will provision 'debian8_32bit_32bit', for label: 'debian8_32bit_32bit_INIT3_CONTAINER', in cloud: 'docker-main'
      Aug 28, 2015 2:29:30 PM com.nirima.jenkins.plugins.docker.DockerCloud addProvisionedSlave
      INFORMATION: Not Provisioning 'debian8_32bit_32bit'. Instance limit of '1' reached on server 'docker-main'
      Aug 28, 2015 2:29:40 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
      INFORMATION: Asked to provision 1 slave(s) for: debian8_32bit_32bit_INIT3_CONTAINER
      Aug 28, 2015 2:29:40 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
      INFORMATION: Will provision 'debian8_32bit_32bit', for label: 'debian8_32bit_32bit_INIT3_CONTAINER', in cloud: 'docker-main'
      Aug 28, 2015 2:29:40 PM com.nirima.jenkins.plugins.docker.DockerCloud addProvisionedSlave
      INFORMATION: Not Provisioning 'debian8_32bit_32bit'. Instance limit of '1' reached on server 'docker-main'
      Aug 28, 2015 2:29:50 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
      INFORMATION: Asked to provision 1 slave(s) for: debian8_32bit_32bit_INIT3_CONTAINER
      Aug 28, 2015 2:29:50 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
      INFORMATION: Will provision 'debian8_32bit_32bit', for label: 'debian8_32bit_32bit_INIT3_CONTAINER', in cloud: 'docker-main'
      Aug 28, 2015 2:29:50 PM com.nirima.jenkins.plugins.docker.DockerCloud addProvisionedSlave
      INFORMATION: Not Provisioning 'debian8_32bit_32bit'. Instance limit of '1' reached on server 'docker-main'

          [JENKINS-30200] Nullpointer exception while connecting to a docker container

          Ashish Behl created issue -

          Kanstantsin Shautsou added a comment - https://github.com/jenkinsci/docker-plugin/blob/master/CONTRIBUTING.md

          Ashish Behl added a comment - - edited

          provide full description of issue
          --> Upgrade to
          Jenkins ver. 1.626
          Docker plugin version: 0.12.1
          Plugin started producing the mentioned error.

          check Manage Jenkins -> Manage Old Data for not updated configuraiton and provide this info
          --> "No old data was found."

          provide full list of installed plugins with versions, jenkins core version
          --> Please see PluginsInstalled Attachment.

          check and provide errors from system jenkins.log and errors from Manage Jenkins -> System Log
          --> Already added to the bug when reporting.

          provide Cloud section from $JENKINS_HOME/config.xml file
          --> the cloud section contains a lot of images. I am attaching partially in "clouds_section_config.xml".

          describe how your docker infrastructure looks like
          --> 2 docker servers, around 84 images. The docker servers and Jenkins are all separate Virtual machines.
          --> The jobs are all sequential, running one container at a time.

          provide docker host/api version
          --> Tried two docker versions 1.6.1 and 1.8.1

          provide steps for reproducing
          --> Just create a node with the mentioned configuration and jenkins and docker version as written before. Run a job. The run fails.

          any code or log example surround with right markdown https://help.github.com/articles/github-flavored-markdown/
          --> configuration and logs already attached.

          Ashish Behl added a comment - - edited provide full description of issue --> Upgrade to Jenkins ver. 1.626 Docker plugin version: 0.12.1 Plugin started producing the mentioned error. check Manage Jenkins -> Manage Old Data for not updated configuraiton and provide this info --> "No old data was found." provide full list of installed plugins with versions, jenkins core version --> Please see PluginsInstalled Attachment. check and provide errors from system jenkins.log and errors from Manage Jenkins -> System Log --> Already added to the bug when reporting. provide Cloud section from $JENKINS_HOME/config.xml file --> the cloud section contains a lot of images. I am attaching partially in "clouds_section_config.xml". describe how your docker infrastructure looks like --> 2 docker servers, around 84 images. The docker servers and Jenkins are all separate Virtual machines. --> The jobs are all sequential, running one container at a time. provide docker host/api version --> Tried two docker versions 1.6.1 and 1.8.1 provide steps for reproducing --> Just create a node with the mentioned configuration and jenkins and docker version as written before. Run a job. The run fails. any code or log example surround with right markdown https://help.github.com/articles/github-flavored-markdown/ --> configuration and logs already attached.
          Ashish Behl made changes -
          Attachment New: PluginsInstalled [ 30571 ]
          Attachment New: clouds_section_config.xml [ 30572 ]

          Ashish Behl added a comment -

          Another Observation:
          Downgrading to Docker plugin v 0.9.2 and using Docker v 1.6.1 again works.

          Ashish Behl added a comment - Another Observation: Downgrading to Docker plugin v 0.9.2 and using Docker v 1.6.1 again works.

          Could you try with latest? (don't forget backup before and restore in case revert)

          Kanstantsin Shautsou added a comment - Could you try with latest? (don't forget backup before and restore in case revert)

          Same issue here:

          Jenkins: 1.628
          Docker plugin: 0.13.0

          docker@vbox:~$ docker version
          Client:
           Version:      1.8.2
           API version:  1.20
           Go version:   go1.4.2
           Git commit:   0a8c2e3
           Built:        Thu Sep 10 19:10:10 UTC 2015
           OS/Arch:      linux/amd64
          
          Server:
           Version:      1.8.2
           API version:  1.20
           Go version:   go1.4.2
           Git commit:   0a8c2e3
           Built:        Thu Sep 10 19:10:10 UTC 2015
           OS/Arch:      linux/amd64
          
            <clouds>
              <com.nirima.jenkins.plugins.docker.DockerCloud plugin="docker-plugin@0.13.0">
                <name>docker-machine</name>
                <templates>
                  <com.nirima.jenkins.plugins.docker.DockerTemplate>
                    <configVersion>2</configVersion>
                    <labelString>centos6</labelString>
                    <launcher class="com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher">
                      <sshConnector plugin="ssh-slaves@1.10">
                        <port>22</port>
                        <credentialsId>a0c07872-47a1-4c29-829c-1279c2c8ef9a</credentialsId>
                        <jvmOptions></jvmOptions>
                        <javaPath></javaPath>
                        <maxNumRetries>0</maxNumRetries>
                        <retryWaitTime>0</retryWaitTime>
                      </sshConnector>
                    </launcher>
                    <remoteFsMapping></remoteFsMapping>
                    <remoteFs>/home/jenkins</remoteFs>
                    <instanceCap>2147483647</instanceCap>
                    <mode>NORMAL</mode>
                    <retentionStrategy class="com.nirima.jenkins.plugins.docker.strategy.DockerOnceRetentionStrategy">
                      <idleMinutes>1</idleMinutes>
                      <idleMinutes defined-in="com.nirima.jenkins.plugins.docker.strategy.DockerOnceRetentionStrategy">1</idleMinutes>
                    </retentionStrategy>
                    <numExecutors>1</numExecutors>
                    <dockerTemplateBase>
                      <image>jenkins-slave</image>
                      <dockerCommand></dockerCommand>
                      <lxcConfString></lxcConfString>
                      <hostname></hostname>
                      <dnsHosts/>
                      <volumes/>
                      <volumesFrom2/>
                      <environment/>
                      <bindPorts></bindPorts>
                      <bindAllPorts>false</bindAllPorts>
                      <memoryLimit>1024</memoryLimit>
                      <privileged>false</privileged>
                      <tty>false</tty>
                      <extraHosts class="java.util.Collections$UnmodifiableRandomAccessList" resolves-to="java.util.Collections$UnmodifiableList">
                        <c class="list"/>
                        <list reference="../c"/>
                      </extraHosts>
                    </dockerTemplateBase>
                    <removeVolumes>true</removeVolumes>
                    <pullStrategy>PULL_LATEST</pullStrategy>
                  </com.nirima.jenkins.plugins.docker.DockerTemplate>
                </templates>
                <serverUrl>http://192.168.99.101:2376</serverUrl>
                <connectTimeout>5</connectTimeout>
                <readTimeout>15</readTimeout>
                <version>1.20</version>
                <credentialsId></credentialsId>
                <containerCap>10</containerCap>
              </com.nirima.jenkins.plugins.docker.DockerCloud>
            </clouds>
          

          Error message:

          INFO: Asked to provision 1 slave(s) for: centos6
          Sep 11, 2015 5:04:47 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
          INFO: Will provision 'jenkins-slave', for label: 'centos6', in cloud: 'docker-machine'
          Sep 11, 2015 5:04:47 PM com.nirima.jenkins.plugins.docker.DockerCloud addProvisionedSlave
          INFO: Provisioning 'jenkins-slave' number '0' on 'docker-machine'; Total containers: '0'
          Sep 11, 2015 5:04:47 PM hudson.slaves.NodeProvisioner$StandardStrategyImpl apply
          INFO: Started provisioning Image of jenkins-slave from docker-machine with 1 executors. Remaining excess workload: 0
          Sep 11, 2015 5:04:47 PM com.nirima.jenkins.plugins.docker.DockerCloud provisionWithWait
          INFO: Trying to run container for jenkins-slave
          Sep 11, 2015 5:04:47 PM com.nirima.jenkins.plugins.docker.DockerCloud$1 call
          SEVERE: Error in provisioning; template='DockerTemplate{configVersion=2, labelString='centos6', launcher=com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher@5b7eeaee, remoteFsMapping='', remoteFs='/home/jenkins', instanceCap=2147483647, mode=NORMAL, retentionStrategy=com.nirima.jenkins.plugins.docker.strategy.DockerOnceRetentionStrategy@32b215be, numExecutors=1, dockerTemplateBase=DockerTemplateBase{image=jenkins-slave}, removeVolumes=true, pullStrategy=PULL_LATEST}' for cloud='docker-machine'
          java.lang.NullPointerException
                  at com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher.getPortUtils(DockerComputerSSHLauncher.java:118)
                  at com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher.waitUp(DockerComputerSSHLauncher.java:77)
                  at com.nirima.jenkins.plugins.docker.DockerCloud.provisionWithWait(DockerCloud.java:373)
                  at com.nirima.jenkins.plugins.docker.DockerCloud.access$000(DockerCloud.java:58)
                  at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:233)
                  at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:230)
                  at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46)
                  at java.util.concurrent.FutureTask.run(FutureTask.java:262)
                  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
                  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
                  at java.lang.Thread.run(Thread.java:745)
          

          Same Jenkins & docker plugin version, but with docker 1.7.1 seems to be OK:

          # docker version
          Client version: 1.7.1
          Client API version: 1.19
          Go version (client): go1.4.2
          Git commit (client): 786b29d/1.7.1
          OS/Arch (client): linux/amd64
          Server version: 1.7.1
          Server API version: 1.19
          Go version (server): go1.4.2
          Git commit (server): 786b29d/1.7.1
          OS/Arch (server): linux/amd64
          
          INFO: Asked to provision 1 slave(s) for: centos6
          Sep 11, 2015 6:52:29 PM com.nirima.jenkins.plugins.docker.DockerCloud provision
          INFO: Will provision 'jenkins-slave:1', for label: 'centos6', in cloud: 'docker-machine'
          Sep 11, 2015 6:52:29 PM com.nirima.jenkins.plugins.docker.DockerCloud addProvisionedSlave
          INFO: Provisioning 'jenkins-slave:1' number '1' on 'docker-machine'; Total containers: '1'
          Sep 11, 2015 6:52:29 PM hudson.slaves.NodeProvisioner$StandardStrategyImpl apply
          INFO: Started provisioning Image of jenkins-slave:1 from docker-machine with 1 executors. Remaining excess workload: -0.372
          Sep 11, 2015 6:52:29 PM com.nirima.jenkins.plugins.docker.DockerCloud provisionWithWait
          INFO: Trying to run container for jenkins-slave:1
          Sep 11, 2015 6:52:42 PM com.nirima.jenkins.plugins.docker.utils.PortUtils bySshWithEveryRetryWaitFor
          INFO: SSH port is open on us-slave-docker-01:33185
          Sep 11, 2015 6:52:42 PM com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher getSSHLauncher
          INFO: Creating slave SSH launcher for us-slave-docker-01:33185
          [09/11/15 18:52:43] SSH Launch of docker-machine-b65af9156ebd on us-slave-docker-01 completed in 14,137 ms
          Sep 11, 2015 6:52:49 PM hudson.slaves.NodeProvisioner$2 run
          INFO: Image of jenkins-slave:1 provisioning successfully completed. We have now 3 computer(s)
          [09/11/15 18:53:01] SSH Launch of docker-machine-16e8ebfcad56 on us-slave-docker-01 completed in 11,307 ms
          Sep 11, 2015 6:53:16 PM hudson.model.Run execute
          

          Jaroslav Barton added a comment - Same issue here: Jenkins: 1.628 Docker plugin: 0.13.0 docker@vbox:~$ docker version Client: Version: 1.8.2 API version: 1.20 Go version: go1.4.2 Git commit: 0a8c2e3 Built: Thu Sep 10 19:10:10 UTC 2015 OS/Arch: linux/amd64 Server: Version: 1.8.2 API version: 1.20 Go version: go1.4.2 Git commit: 0a8c2e3 Built: Thu Sep 10 19:10:10 UTC 2015 OS/Arch: linux/amd64 <clouds> <com.nirima.jenkins.plugins.docker.DockerCloud plugin= "docker-plugin@0.13.0" > <name>docker-machine</name> <templates> <com.nirima.jenkins.plugins.docker.DockerTemplate> <configVersion>2</configVersion> <labelString>centos6</labelString> <launcher class= "com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher" > <sshConnector plugin= "ssh-slaves@1.10" > <port>22</port> <credentialsId>a0c07872-47a1-4c29-829c-1279c2c8ef9a</credentialsId> <jvmOptions></jvmOptions> <javaPath></javaPath> <maxNumRetries>0</maxNumRetries> <retryWaitTime>0</retryWaitTime> </sshConnector> </launcher> <remoteFsMapping></remoteFsMapping> <remoteFs>/home/jenkins</remoteFs> <instanceCap>2147483647</instanceCap> <mode>NORMAL</mode> <retentionStrategy class= "com.nirima.jenkins.plugins.docker.strategy.DockerOnceRetentionStrategy" > <idleMinutes>1</idleMinutes> <idleMinutes defined-in= "com.nirima.jenkins.plugins.docker.strategy.DockerOnceRetentionStrategy" >1</idleMinutes> </retentionStrategy> <numExecutors>1</numExecutors> <dockerTemplateBase> <image>jenkins-slave</image> <dockerCommand></dockerCommand> <lxcConfString></lxcConfString> <hostname></hostname> <dnsHosts/> <volumes/> <volumesFrom2/> <environment/> <bindPorts></bindPorts> <bindAllPorts> false </bindAllPorts> <memoryLimit>1024</memoryLimit> <privileged> false </privileged> <tty> false </tty> <extraHosts class= "java.util.Collections$UnmodifiableRandomAccessList" resolves-to= "java.util.Collections$UnmodifiableList" > <c class= "list" /> <list reference= "../c" /> </extraHosts> </dockerTemplateBase> <removeVolumes> true </removeVolumes> <pullStrategy>PULL_LATEST</pullStrategy> </com.nirima.jenkins.plugins.docker.DockerTemplate> </templates> <serverUrl>http: //192.168.99.101:2376</serverUrl> <connectTimeout>5</connectTimeout> <readTimeout>15</readTimeout> <version>1.20</version> <credentialsId></credentialsId> <containerCap>10</containerCap> </com.nirima.jenkins.plugins.docker.DockerCloud> </clouds> Error message: INFO: Asked to provision 1 slave(s) for : centos6 Sep 11, 2015 5:04:47 PM com.nirima.jenkins.plugins.docker.DockerCloud provision INFO: Will provision 'jenkins-slave' , for label: 'centos6' , in cloud: 'docker-machine' Sep 11, 2015 5:04:47 PM com.nirima.jenkins.plugins.docker.DockerCloud addProvisionedSlave INFO: Provisioning 'jenkins-slave' number '0' on 'docker-machine' ; Total containers: '0' Sep 11, 2015 5:04:47 PM hudson.slaves.NodeProvisioner$StandardStrategyImpl apply INFO: Started provisioning Image of jenkins-slave from docker-machine with 1 executors. Remaining excess workload: 0 Sep 11, 2015 5:04:47 PM com.nirima.jenkins.plugins.docker.DockerCloud provisionWithWait INFO: Trying to run container for jenkins-slave Sep 11, 2015 5:04:47 PM com.nirima.jenkins.plugins.docker.DockerCloud$1 call SEVERE: Error in provisioning; template= 'DockerTemplate{configVersion=2, labelString=' centos6 ', launcher=com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher@5b7eeaee, remoteFsMapping=' ', remoteFs=' /home/jenkins ', instanceCap=2147483647, mode=NORMAL, retentionStrategy=com.nirima.jenkins.plugins.docker.strategy.DockerOnceRetentionStrategy@32b215be, numExecutors=1, dockerTemplateBase=DockerTemplateBase{image=jenkins-slave}, removeVolumes= true , pullStrategy=PULL_LATEST}' for cloud= 'docker-machine' java.lang.NullPointerException at com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher.getPortUtils(DockerComputerSSHLauncher.java:118) at com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher.waitUp(DockerComputerSSHLauncher.java:77) at com.nirima.jenkins.plugins.docker.DockerCloud.provisionWithWait(DockerCloud.java:373) at com.nirima.jenkins.plugins.docker.DockerCloud.access$000(DockerCloud.java:58) at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:233) at com.nirima.jenkins.plugins.docker.DockerCloud$1.call(DockerCloud.java:230) at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang. Thread .run( Thread .java:745) Same Jenkins & docker plugin version, but with docker 1.7.1 seems to be OK: # docker version Client version: 1.7.1 Client API version: 1.19 Go version (client): go1.4.2 Git commit (client): 786b29d/1.7.1 OS/Arch (client): linux/amd64 Server version: 1.7.1 Server API version: 1.19 Go version (server): go1.4.2 Git commit (server): 786b29d/1.7.1 OS/Arch (server): linux/amd64 INFO: Asked to provision 1 slave(s) for : centos6 Sep 11, 2015 6:52:29 PM com.nirima.jenkins.plugins.docker.DockerCloud provision INFO: Will provision 'jenkins-slave:1' , for label: 'centos6' , in cloud: 'docker-machine' Sep 11, 2015 6:52:29 PM com.nirima.jenkins.plugins.docker.DockerCloud addProvisionedSlave INFO: Provisioning 'jenkins-slave:1' number '1' on 'docker-machine' ; Total containers: '1' Sep 11, 2015 6:52:29 PM hudson.slaves.NodeProvisioner$StandardStrategyImpl apply INFO: Started provisioning Image of jenkins-slave:1 from docker-machine with 1 executors. Remaining excess workload: -0.372 Sep 11, 2015 6:52:29 PM com.nirima.jenkins.plugins.docker.DockerCloud provisionWithWait INFO: Trying to run container for jenkins-slave:1 Sep 11, 2015 6:52:42 PM com.nirima.jenkins.plugins.docker.utils.PortUtils bySshWithEveryRetryWaitFor INFO: SSH port is open on us-slave-docker-01:33185 Sep 11, 2015 6:52:42 PM com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher getSSHLauncher INFO: Creating slave SSH launcher for us-slave-docker-01:33185 [09/11/15 18:52:43] SSH Launch of docker-machine-b65af9156ebd on us-slave-docker-01 completed in 14,137 ms Sep 11, 2015 6:52:49 PM hudson.slaves.NodeProvisioner$2 run INFO: Image of jenkins-slave:1 provisioning successfully completed. We have now 3 computer(s) [09/11/15 18:53:01] SSH Launch of docker-machine-16e8ebfcad56 on us-slave-docker-01 completed in 11,307 ms Sep 11, 2015 6:53:16 PM hudson.model.Run execute

          Jaroslav Barton added a comment - - edited

          I've played with it and:

          Docker API v1.19:

              "PortSpecs": [
                  "22/tcp"
              ]
          

          Is not part of Docker API v1.20. In both v1.19 and v1.20 API documentation I see:

              "ExposedPorts": {
                  "22/tcp": {}
               },
          

          When I update API request sent by jenkins (removed PortSpec, added ExposedPorts), I'm able to connect running container.

          Jaroslav Barton added a comment - - edited I've played with it and: Docker API v1.19 : "PortSpecs" : [ "22/tcp" ] Is not part of Docker API v1.20 . In both v1.19 and v1.20 API documentation I see: "ExposedPorts" : { "22/tcp" : {} }, When I update API request sent by jenkins (removed PortSpec , added ExposedPorts ), I'm able to connect running container.

          Thanks for verbose output. So is it an newer API issue or docker-plugin bug?

          Kanstantsin Shautsou added a comment - Thanks for verbose output. So is it an newer API issue or docker-plugin bug?

          Also please increase DockerOnceRetentionStrategy timeout to 10 as it may kill Slave randomly.

          Kanstantsin Shautsou added a comment - Also please increase DockerOnceRetentionStrategy timeout to 10 as it may kill Slave randomly.

            magnayn magnayn
            ashish_behl Ashish Behl
            Votes:
            2 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: