docker搭建jenkins
一、搭建jenkins環境
1、下載jenkins映象https://hub.docker.com/r/jenkins/jenkins/tags,選擇lts的jenkins最新版本
docker pull jenkins/jenkins:lts
2、/home下新建jenkins使用者的工作目錄,這一步最好保持目錄一致
mkdir /home/jenkins
3、檢視目錄歸屬ID命令 ls -nd /home/jenkins ,這裡檢視ID是0
上述步驟有的查出來ID是1000,無論是0還是1000均給ID為1000的使用者新增操作許可權
chown -R 1000:1000 /home/jenkins/
4、執行容器
docker run -itd -p 9090:8080 -p 50000:50000 --name jenkins --privileged=true -v /home/jenkins:/var/jenkins_home jenkins/jenkins:lts
- --privileged=true 讓容器有root許可權,方便進入容器操作
- -p 9090:8080 jenkins的web訪問埠9090
- -v /home/jenkins:/var/jenkins_home 容器/var/jenkins_home路徑對映到宿主機/home/jenkins
5、瀏覽器輸入http://伺服器ip:9090/
訪問jenkins首頁(使用阿里雲的話訪問前記得先開放埠)
首次啟動需要輸入密碼
啟動容器的時候容器/var/jenkins_home路徑對映到宿主機/home/jenkins,在宿主機的/home/jenkins/secrets/initialAdminPassword地址可以找到密碼
接下來選擇左側安裝推薦的外掛,
二、通過SSH配置linux宿主機為slave節點
jenkins是搭建在docker容器裡,執行job的時候預設會在容器內部執行程式碼,相關的依賴環境python等需要在docker容器重新安裝一遍,這樣很不方便。
如果宿主機已經安裝好相關的執行環境了,docker容器我們搭建好jenkins就行了, 把宿主機設定為jenkins的一個slave節點
1、外掛管理中查詢SSH Agent進行安裝
2、啟動SSH Sever
Jenkins-系統管理 - 全域性安全配置, 把 SSH Server 設定為啟用(預設是禁用)
3、新增宿主機節點
Jenkins- 系統管理 - 節點管理,新建節點
新增節點頁面
- 名稱 自定義一個節點名稱
- 執行器數量 可以同時執行的job執行緒數,隨便寫個數字
- 遠端工作目 宿主機上workspace目錄
- 標籤 自定義
- 用法 儘可能的使用這個節點
- 啟動方式 Launch agent agents via SSH
- 主機 你自己的宿主機linux服務的ip
- Credentials 新增你的linux伺服器遠端訪問的root賬號和密碼
- Host Key Verification Strategy 這項選擇Non verifying Verifcation Stragegy
新增證書Credentials,linux伺服器遠端訪問的root賬號和密碼
4、新增成功後是離線狀態,點選節點進入詳情操作“重啟代理”。沒有紅色了代表已經正常啟動了
5、新建任務job在新建的節點下構建