For more information about this image and its history, please see the relevant manifest file (library/jenkins
). This image is updated via pull requests to the docker-library/official-images
GitHub repo.
For detailed information about the virtual/transfer sizes and individual layers of each of the above supported tags, please see the jenkins/tag-details.md
file in the docker-library/docs
GitHub repo.
The Jenkins Continuous Integration and Delivery server.
This is a fully functional Jenkins server, based on the Long Term Support release http://jenkins-ci.org/.
$ docker run -p 8080:8080 jenkins
This will store the workspace in /var/jenkins_home. All Jenkins data lives in there - including plugins and configuration. You will probably want to make that a persistent volume:
$ docker run --name myjenkins -p 8080:8080 -v /var/jenkins_home jenkins
The volume for the "myjenkins" named container will then be persistent.
You can also bind mount in a volume from the host:
First, ensure that /your/home is accessible by the jenkins user in container (jenkins user - uid 102 normally - or use -u root), then:
$ docker run -p 8080:8080 -v /your/home:/var/jenkins_home jenkins
If you bind mount in a volume - you can simply back up that directory (which is jenkins_home) at any time.
If your volume is inside a container - you can use docker cp $ID:/var/jenkins_home
command to extract the data.
You can run builds on the master (out of the box) buf if you want to attach build slave servers: make sure you map the port: -p 50000:50000
- which will be used when you connect a slave agent.
Here is an example docker container you can use as a build server with lots of good tools installed - which is well worth trying.
All the data needed is in the /var/jenkins_home directory - so depending on how you manage that - depends on how you upgrade. Generally - you can copy it out - and then "docker pull" the image again - and you will have the latest LTS - you can then start up with -v pointing to that data (/var/jenkins_home) and everything will be as you left it.
This image is officially supported on Docker version 1.9.0.
Support for older versions (down to 1.6) is provided on a best-effort basis.
Please see the Docker installation documentation for details on how to upgrade your Docker daemon.
Documentation for this image is stored in the jenkins/
directory of the docker-library/docs
GitHub repo. Be sure to familiarize yourself with the repository's README.md
file before attempting a pull request.
If you have any problems with or questions about this image, please contact us through a GitHub issue.
You can also reach many of the official image maintainers via the #docker-library
IRC channel on Freenode.
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
Before you start to code, we recommend discussing your plans through a GitHub issue, especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.