<p>Yes, you are correct. Bamboo will spawn the build containers on the agent that the build is running on (either Local, Remote, or, Elastic - depending on your configuration).</p>

<p>In order for this to work the agent will require Docker to be installed and running.</p>

CC BY-SA 3.0
2018-04-02T12:22:48.580Z
Wait but whats the difference to docker capability and using docker run in script tasks?
Ta Mu
CC BY-SA 3.0
2018-04-02T23:59:16.107Z
The difference is that the stated purpose of the Docker runner is to isolate and maximise reproducibility of builds. The Docker tasks are there to interact with the Docker engine (building/running/pushing images).

You are correct that you can achieve a similar outcome by issuing `docker run` commands inside a script task. The Docker runner will automatically mount your working directory.
nothingtosee
CC BY-SA 3.0
2018-04-02T12:15:43.207Z
2018-04-02T16:02:40.760Z
2018-04-02T16:02:40.760Z
nothingtosee
<p>Finally, it is possible in Bamboo to let a build run in a Docker container without dealing with agent configuration.</p>

<p>The system just asks for a image.</p>

<p>Now, what about the underlying infrastructure, what happens there? 
Will then Bamboo server host just spawn containers locally (which limits horizontal scalability)? </p>

<docker><bamboo>
Build isolation - Docker container based builds in Bamboo 6.4.0
Ta Mu
# Build isolation - Docker container based builds in Bamboo 6.4.0

(Asked by: username_0 on 2018-03-20)

Finally, it is possible in Bamboo to let a build run in a Docker container without dealing with agent configuration.

The system just asks for a image.

Now, what about the underlying infrastructure, what happens there?
Will then Bamboo server host just spawn containers locally (which limits horizontal scalability)?

**Tags:** docker, bamboo


---

## 1 answers

### Answer by username_1 on 2018-04-02. Score: 3 | Accepted answer

Yes, you are correct. Bamboo will spawn the build containers on the agent that the build is running on (either Local, Remote, or, Elastic - depending on your configuration).

In order for this to work the agent will require Docker to be installed and running.

> **Comments:**
> **username_0**: Wait but whats the difference to docker capability and using docker run in script tasks?  
> **username_1**: The difference is that the stated purpose of the Docker runner is to isolate and maximise reproducibility of builds. The Docker tasks are there to interact with the Docker engine (building/running/pushing images).  You are correct that you can achieve a similar outcome by issuing `docker run` commands inside a script task. The Docker runner will automatically mount your working directory.  

---

