CloudBees Jenkins and Docker
The use of Docker containers for the simple and flexible handling of build, test and production environments is common practice nowadays. This is particularly owing to the trend for introducing continuous delivery within the context of DevOps. The Jenkins Community and CloudBees provide a series of plug-ins for the seamless integration of Jenkins and Docker.
- Docker Pipeline offers native support for Jenkins Pipeline for setting up CD pipelines.
- Build and Publish enables a project to be built on the basis of a Docker file and then a tested image to be pushed to a Docker hub.
- Docker Hub Notification triggers a downstream job as soon as a tagged Docker container is pushed to the Docker hub.
- Docker Traceability identifies which build pushed a specific Docker container in the production area and shows it on the Jenkins Build page.
- Docker Slaves enables Docker containers to be used as standardised build environments via multiple Jenkins masters.
- Docker Custom Build Environment specifies individually adapted build environments as Docker containers.
The diagram highlights the interaction between Jenkins and Docker as the basis for a deployment pipeline.
The combination of Jenkins and Docker is a clever solution for deploying and executing build and application stacks, in different versions if required. The existing Jenkins plug-ins for the Docker integration support this ideally. As a result of this, the abilities of Jenkins are extended, turning it into the centrepiece of a well-controlled deployment pipeline.