Just update to 2.303.1 (docker container)- still says I need Java 11 (?)


I have Jenkins Docker container installed. I had installed 2.303.1 over a prior version using the procedure here (example):

When I restart the container, I still get a warning to update to Java 11 (from 8). Yet here:

it states that version 2.303.1 is Java 11. I used jenkins.war from war-stable, 2.303.1 (this forum won’t let me enter the link bc no more than 2 links allowed)

Did I update improperly? Do I still need to install Java 11? How do I do so?


Unfortunately, you updated improperly. The update technique described at that site is ill-advised (though very creative, creative in a way that I would never have considered). The update technique described on that page modifies the jenkins.war inside the Docker container image by downloading a new jenkins.war inside the image.

Files packaged into Docker containers are generally considered to be immutable. In that update technique, it is modifying a file that should be immutable.

Because you changed the jenkins.war file inside an existing image, you did not change any of the other components that are part of an updated Jenkins Docker image. Your docker image now contains a newer Jenkins war file with the same Java version as it had before and the same other files as it had before.

If you instead define a Dockerfile that uses FROM jenkins/jenkins:2.303.1, you will have the Jenkins updated Docker image with an updated Java version (and Java 11), updated jenkins.war file, and updated operating system files that may be used by Jenkins.


Great! I figured that there was an issue with the non-standard update instructions that I used. I have resolved the issue by recreating the container using the most recent Jenkins version which has Java 11. Thank you for the quick reply!


1 Like