The aim of this doc is to guide over the process to set up Docker Containers as Build Agents for Jenkins. It's very common to consider Jenkins nodes and agents as synonyms, but strictly speaking are not the same. A Jenkins node, also known as a Jenkins server, is any machine (physical or virtual) connected to the Jenkins network or the Jenkins environment. Nodes provide computational resources and environments to execute Jenkins build jobs. Both controllers and agents are considered to be nodes. In summary, we can say that Jenkins Nodes are the machines on which Agents run. By using docker containers as agents, you can reduce and simplify the process to create agents: every build spins up a new container, builds the project, and is destroyed. A common practice is to create docker containers to execute the app build process. In this doc, we will see how to create those containers.