Jenkins inside docker loses configuration when container is restarted
When I start my container using
docker start CONTAINERNAME command, I can access to Jenkins from localhost:8080.
The problem comes up when I change Jenkins configuration and restart Jenkins using
docker stop CONTAINERNAME and
docker start CONTAINERNAME, my Jenkins doesn’t contain any of my previous configuration changes..
How can I persist the Jenkins configuration?
One Solution collect form web for “Jenkins inside docker loses configuration when container is restarted”
You need to mount the Jenkins configuration as a volume, the
-v flag will do just that for you. (you can ignore the
--privileged flag in my example unless you plan on building docker images inside your jenkins docker image)
docker run --privileged --name='jenkins' -d -p 6999:8080 -p 50000:50000 -v /home/jan/jenkins:/var/jenkins_home jenkins:latest
-v flag will mount your
/var/jenkins_home outside your container in
/home/jan/jenkins maintaining it between rebuilds.
--name so that you have a fixed name for the container to start / stop it from.
Then next time you want to run it, simply call
docker start jenkins