Docker container fail to start for multiple Jobs in a single Stage

XMLWordPrintable

    • Severity 3 - Minor

      Summary

      Docker container fail to start for multiple Jobs in a single Stage when using all agents in the same machine

      Steps to Reproduce

      1. Create two Jobs in a single Stage
      2. Create two local agents, or two remote agents in a single machine
      3. Configure Docker Container for the Jobs
      4. Run the plan

      Expected Results

      It will run successfully

      Actual Results

      The below exception is thrown in the atlassian-bamboo.log file:

      2018-04-10 23:03:10,877 ERROR [23-BAM::second::Agent:pool-39-thread-1] [BuildAgentControllerImpl] Error occurred while executing the build for bamboo - git - Default Job #5 (BAM-GIT-JOB1-5)
      com.atlassian.bamboo.docker.DockerException: Error running Docker run command
      	at com.atlassian.bamboo.docker.DockerContainerServiceImpl.run(DockerContainerServiceImpl.java:118)
      	at com.atlassian.bamboo.v2.build.agent.docker.DockerContainerControllerImpl.startContainerIfRequired(DockerContainerControllerImpl.java:78)
      	at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.build(DefaultBuildAgent.java:173)
      	at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.lambda$waitAndPerformBuild$0(BuildAgentControllerImpl.java:122)
      	at com.atlassian.bamboo.variable.CustomVariableContextImpl.withVariableSubstitutor(CustomVariableContextImpl.java:185)
      	at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:117)
      	at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent$1.run(DefaultBuildAgent.java:126)
      	at com.atlassian.bamboo.utils.BambooRunnables$1.run(BambooRunnables.java:48)
      	at com.atlassian.bamboo.security.ImpersonationHelper.runWith(ImpersonationHelper.java:26)
      	at com.atlassian.bamboo.security.ImpersonationHelper.runWithSystemAuthority(ImpersonationHelper.java:17)
      	at com.atlassian.bamboo.security.ImpersonationHelper$1.run(ImpersonationHelper.java:41)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: com.atlassian.utils.process.ProcessException: Error executing /usr/local/bin/docker run --volume /Users/klfoong/Desktop/bamboo/atlassian-bamboo-6.4.0/home/xml-data/build-dir/BAM-GIT-JOB1:/Users/klfoong/Desktop/bamboo/atlassian-bamboo-6.4.0/home/xml-data/build-dir/BAM-GIT-JOB1 --volume /Users/klfoong/Desktop/ServiceRocket/bamboo/atlassian-bamboo-6.4.0/home/temp:/Users/klfoong/Desktop/bamboo/atlassian-bamboo-6.4.0/home/temp --detach --name e523ad4e-0e48-409e-ab08-385e658e3f65 --net=host customized-agent:6.2.2 tail -f /dev/null
      	at com.atlassian.bamboo.docker.DockerContainerServiceImpl.execute(DockerContainerServiceImpl.java:252)
      	at com.atlassian.bamboo.docker.DockerContainerServiceImpl.run(DockerContainerServiceImpl.java:106)
      	... 11 more
      

      The build log have the following exception:

      10-Apr-2018 23:03:10	/usr/local/bin/docker: Error response from daemon: Conflict. The container name "/e523ad4e-0e48-409e-ab08-385e658e3f65" is already in use by container "25868ccec340f6c2465885dc8499b31cf508b8ce8e1f4d3bc809afa3ae18dc6b". You have to remove (or rename) that container to be able to reuse that name.
      10-Apr-2018 23:03:10	See '/usr/local/bin/docker run --help'.
      10-Apr-2018 23:03:10	Failed to start docker container e523ad4e-0e48-409e-ab08-385e658e3f65
      10-Apr-2018 23:03:10	com.atlassian.bamboo.docker.DockerException: Error running Docker run command
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.docker.DockerContainerServiceImpl.run(DockerContainerServiceImpl.java:118)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.v2.build.agent.docker.DockerContainerControllerImpl.startContainerIfRequired(DockerContainerControllerImpl.java:78)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.build(DefaultBuildAgent.java:173)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.lambda$waitAndPerformBuild$0(BuildAgentControllerImpl.java:122)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.variable.CustomVariableContextImpl.withVariableSubstitutor(CustomVariableContextImpl.java:185)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:117)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent$1.run(DefaultBuildAgent.java:126)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.utils.BambooRunnables$1.run(BambooRunnables.java:48)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.security.ImpersonationHelper.runWith(ImpersonationHelper.java:26)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.security.ImpersonationHelper.runWithSystemAuthority(ImpersonationHelper.java:17)
      10-Apr-2018 23:03:10	        at com.atlassian.bamboo.security.ImpersonationHelper$1.run(ImpersonationHelper.java:41)
      10-Apr-2018 23:03:10	        at java.lang.Thread.run(Thread.java:745)
      

      Workaround

      Do not use local agents or install remote agents in different machines

            Assignee:
            Grzegorz Lewandowski
            Reporter:
            Foong (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: