1.pull一個(gè)jenkins鏡像 docker pull jenkins:jenkins;
默認(rèn)安裝最新版本Using default tag: latest
2.查看已經(jīng)安裝的jenkins鏡像 docker images;
復(fù)制image ID查看是否是最新版 docker inspect cd14cecfdb3a
3.創(chuàng)建一個(gè)jenkins目錄 mkdir /home/jenkins_home;
4.啟動(dòng)一個(gè)jenkins容器
docker run -d --restart=always -p 8081:8080 \
-v /usr/lib/jvm/java-8-openjdk-amd64/bin/java:/usr/lib/jvm/java-8-openjdk-amd64/bin/java \
-v /usr/lib/jvm/java-8-openjdk-amd64/:/usr/lib/jvm/java-8-openjdk-amd64/ \
-v /home/jenkins_home/:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-e JAVA_OPTS='-Duser.timezone=Asia/Shanghai' \
-u root \
--name jenkins_01 \
jenkins/jenkins:lts
docker run 參數(shù)說(shuō)明
-u root
以root的身份去運(yùn)行鏡像(避免在容器中調(diào)用Docker命令沒(méi)有權(quán)限)
最好使用docker用戶去運(yùn)行
-v /usr/bin/docker:/usr/bin/docker
將宿主機(jī)的docker命令掛載到容器中
可以使用which docker命令查看具體位置
或者把掛載的參數(shù)改為: -v $(which docker):/usr/bin/docker
-v /var/run/docker.sock:/var/run/docker.sock
容器中的進(jìn)程可以通過(guò)它與Docker守護(hù)進(jìn)程進(jìn)行通信
5.查看jenkins服務(wù) docker ps | grep jenkins;
6.啟動(dòng)服務(wù)端 鸟悴。端口需要開(kāi)放一下陈辱,localhost:8081;
注意掛載目錄授權(quán)
sudo chown -R 1000 /var/jenkins_home
7.進(jìn)入容器內(nèi)部docker exec -it jenkins_01 bash;
8.執(zhí)行:cat /var/jenkins_home/secrets/initialAdminPassword,得到密碼并粘貼過(guò)去
细诸;
9.輸入密碼之后沛贪,重啟docker鏡像 docker restart {CONTAINER ID},安裝完畢。
刪除鏡像
1.查詢docker下所有鏡像
docker images
2.查詢所有容器
docker container ls -all
3.找出要?jiǎng)h除的容器
docker container rm jenkins_01
如果容器正在運(yùn)行會(huì)報(bào)錯(cuò)
Error response from daemon: You cannot remove a running container 4fe6ce853e7ccf470433443d1ec4da6d9a7c8a7106ee4ee32ec5248a9ea6d503. Stop the container before attempting removal or force remove
查看正在運(yùn)行的容器利赋,停止后再刪除
docker ps
docker stop 4fe6ce853e7c(CONTAINER ID)
docker container rm jenkins_01
docker images
重復(fù)前面安裝步驟
docker查看日志
jenkins插件安裝速度過(guò)慢
Jenkins在安裝插件時(shí)水评,下載相關(guān)插件包特別慢,究其原因是Jenkins默認(rèn)的插件數(shù)據(jù)源的地址的訪問(wèn)下載速率問(wèn)題媚送,變更其為國(guó)內(nèi)數(shù)據(jù)源中燥,重啟Jenkins,即可解決問(wèn)題塘偎!
進(jìn)入更新配置目錄
cd {你的Jenkins工作目錄}/updates
替換default.json文件中指定的源
sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json