originally inspired by https://hub.docker.com/r/yallalabs/jenkins https://github.com/faudeltn/Jenkins
FROM jenkins/jenkins:2.479.1 sets Jenkins version
plugins.txt contains Jenkins plugins versions
ENV VERSION sets Docker engine version
Jenkins Script Console:
Jenkins.instance.pluginManager.plugins.each{
plugin -> println ("${plugin.getShortName()}:${plugin.getVersion()}")
}
docker builder prune --all
docker build -t mosazhaw/jenkins:2.528.2_jdk25.0.1 .
docker run -p 8083:8080 --name=jenkins-master-fs25 -v jenkins-master-fs25:/var/jenkins_home mosazhaw/jenkins:2.528.2_jdk25.0.1
docker run -p 8084:8080 --name=jenkins-class-fs25 -v jenkins-class-fs25:/var/jenkins_home mosazhaw/jenkins:2.528.2_jdk25.0.1
docker login
docker push mosazhaw/jenkins:2.528.2_jdk25.0.1
if missing: docker buildx create --name devops
docker login
docker buildx use devops
docker buildx build --push --platform linux/amd64,linux/arm64 -t mosazhaw/jenkins:2.528.2_jdk25.0.1 .
docker context use default
\\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes
docker exec -it --user root jenkins-XYZ /bin/bash
chown -R jenkins:jenkins $JENKINS_HOME/jobs