天天看點

Docker 搭建 Jenkins 實作自動部署

環境配置

作業系統:CentOS Linux release 7.6.1810
Docker 版本:19.03.5
Jenkins 版本:2.204.1           

Docker安裝Jenkins

Docker下載下傳Jenkins

docker pull jenkins/jenkins:lts //最新版           

檢視Jenkins鏡像

docker images
docker inspect jenkins鏡像ID           
Docker 搭建 Jenkins 實作自動部署

建立一個Jenkins目錄

mkdir /data/jenkins_home;           

安裝啟動Jenkins容器

docker run -d --name jenkins -p 8081:8080 -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:lts;
備注:
-d //啟動在背景
--name //容器名字
-p //端口映射(8081:宿主主機端口,8080:容器内部端口)
-v //資料卷挂載映射(/data/jenkins_home:宿主主機目錄,另外一個即是容器目錄)
enkins/jenkins:lts //Jenkins鏡像(最新版)           

檢視Jenkins啟動情況

docker ps | grep jenkins;           
Docker 搭建 Jenkins 實作自動部署

安裝過程遇到的小問題

Jenkins容器docker run之後狀态總是Exited

檢視docker日志 :
docker logs jenkins  
發現是目前權限問題
因為/data/jenkins_home 目錄是root權限           
Docker 搭建 Jenkins 實作自動部署
Docker 搭建 Jenkins 實作自動部署
解決:
chown -R 1000:1000 /data/jenkins_home //使用者組改變           
Docker 搭建 Jenkins 實作自動部署

宿主主機端口要開啟

因為本操作是在阿裡雲ECS上進行安裝的,需要在安全組裡開放8081此端口。           

通路Jenkins

http://120.26.50.165:8081 //ip:端口号           

管理配置Jenkins

解鎖

在安裝完成後,預設生成了一個登入密碼,首次登入需要這個密碼。
密碼路徑:var/jenkins_home/secrets/initialAdminPassword //容器内部
查找密碼:
docker exec -it jenkins_01 bash //進入jenkins容器
cat /var/jenkins_home/secrets/initialAdminPassword //檢視密碼           
Docker 搭建 Jenkins 實作自動部署

安裝插件

新手安裝建議選擇:Install suggested plugins,安裝過程大概半個多小時。           
Docker 搭建 Jenkins 實作自動部署
Docker 搭建 Jenkins 實作自動部署

管理使用者建立

這個使用者就是最大管理者權限,相當于admin           
Docker 搭建 Jenkins 實作自動部署

Jenkins配置完成

到此步,安裝就大功告成!
http://120.26.50.165:8081 //ip:端口号           
Docker 搭建 Jenkins 實作自動部署
Docker 搭建 Jenkins 實作自動部署

實作自動化部署

有了Jenkins,接下來就是代碼的自動部署過程了。           
請參考這一篇: Docker+lnmp+Jenkins+碼雲實作PHP代碼自動部署