1.拉去鏡像
docker pull hub.c.163.com/library/jenkins:latest
2.創建jenkins本地存儲空間
mkdir -p /opt/kenkins-data
3.修改目錄用戶uid
需要修改下目錄權限, 因為當映射本地數據卷時,/opt/jenkins-data目錄的擁有者為root用戶,而容器中jenkins user的uid為1000
docker run -ti --rm --entrypoint="/bin/bash" hub.c.163.com/library/jenkins -c "whoami && id" -c "whoami && id"
jenkins
uid=1000(jenkins) gid=1000(jenkins) groups=1000(jenkins)
so:
sudo chown -R 1000:1000 /opt/jenkins-data
不修改會顯示 :
touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
4.實例鏡像
docker run --name jkens -d -p 8080:8080 -p 50000:50000 -v /opt/jenkins-data:/var/jenkins_home hub.c.163.com/library/jenkins
5.docker重啟默認自動拉起jkens
docker update --restart=always <CONTAINER ID>
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7544eaa08c25 hub.c.163.com/library/jenkins "/bin/tini -- /usr/l…" 11 minutes ago Exited (143) 4 minutes ago jkens
c7c86b92d9d2 hub.c.163.com/library/jenkins "/bin/tini -- /usr/l…" 12 minutes ago Exited (1) 12 minutes ago cocky_goldstine
[root@localhost docker]# docker update --restart=always 7544eaa08c25
7544eaa08c25
或者起容器時直接
docker run --name jkens -d -p 8080:8080 -p 50000:50000 -v /opt/jenkins-data:/var/jenkins_home hub.c.163.com/library/jenkins --restart=always
6.首次使用時,訪問 ip:8080 jenkins web-ui 端需要輸入密碼即:
docker 啟動時如下輸出,鍵入即可。
Jenkins initial setup is required. An admin user has been created and a password generated. Please use the following password to proceed to installation: 2f2a452d37ba4b04824bc6af09a1dac3lalal This may also be found at: /var/jenkins_home/secrets/initialAdminPassword
后續操作 安裝插件 創建用戶