Running Jenkins as a Docker Container
Internal
Overview
Image with Pre-Installed Recommended Plugins
The following Dockerfile builds an image that contains all recommended plugins, and Jenkins Docker Plugin. The image was configured so plugins and the WAR content will be part of the image, while $JENKINS_HOME is written on an external volume on the host system:
Build it with:
docker build -t jenkins-with-plugins .
Help
docker run --rm jenkins-with-plugins --help
Networking
If planning to execute Jenkins with a Docker plugin, create a dedicated user-defined bridge network named "jenkins-cloud" and start the Jenkins container so it will connect to that network. This is to take advantage of automatic DNS resolution between containers when Docker Jenkins agents call into the master:
docker network create --driver=bridge jenkins-cloud
Run
The following command line assumes that the image was modified to maintain the plugin and WAR directories in custom locations:
The instance will be available at http://localhost:8080/