Docker安裝Jenkins詳解

1、 什么是Jenkins

  • Jenkins的前身是Hudson

  • Jenkins是開源CI&CD軟件領(lǐng)導(dǎo)者, 提供超過1000個插件來支持構(gòu)建、部署、自動化, 滿足任何項(xiàng)目的需要。

2 Jenkins安裝準(zhǔn)備工作

    1. 機(jī)器環(huán)境
機(jī)器名稱 IP 內(nèi)存 處理器 硬盤
node1(master) 192.168.1.235 3G 1核 20G
node2(slave) 192.168.1.236 3G 1核 20G
    1. 準(zhǔn)備兩臺機(jī)器(演示多臺機(jī)器Jenkins部署Web項(xiàng)目),這里我是在虛擬機(jī)安裝的2臺CentOS操作系統(tǒng)的環(huán)境配置情況,你可以根據(jù)自己的學(xué)習(xí)情況進(jìn)行分配內(nèi)存和硬盤或你土豪可以準(zhǔn)備2臺云環(huán)境也OK
    1. docker腳本安裝,指定Jenkins默認(rèn)路徑/root/.jenkins/workspace拉取代碼的路徑同步到宿主機(jī)路徑/usr/local/jenkins/workspace.
    1. 由于jdk和maven,git都在宿主機(jī),所以要v(數(shù)據(jù)卷參數(shù))指定jenkins容器的路徑把宿主機(jī)的軟件同步到容器
docker run -d --restart=always -p 9001:8080 \
-v /usr/local/jenkins/workspace/:/root/.jenkins/workspace \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/git:/usr/bin/git \
-v /usr/local/jdk1.8:/usr/local/jdk1.8 \
-v /usr/local/maven3:/usr/local/maven3 --name jenkins jenkins:latest
    1. 安裝參數(shù)說明
參數(shù)1 參數(shù)說明
docker.sock 守護(hù)進(jìn)程文件
--restart=always 設(shè)置自動重啟命令
--name jenkins 給這個容器起一個名稱,jenkins:latest指定版本進(jìn)行安裝
/usr/usr/git git安裝的目錄
/usr/local/jdk1.8 JDK安裝的目錄
/usr/local/maven3 maven3 安裝的目錄
\ 表示shell腳本換行轉(zhuǎn)義符

3、Jenkins安裝圖解說明

  • 1 獲取解鎖秘鑰,此秘鑰是在Jenkins容器里面,此時必須要進(jìn)入容器里面獲取


    Jenkins安裝圖解
    1. 進(jìn)入Jenkins容器里面命令
docker exec -it jenkins /bin/bash
    1. cat指定文件獲取
  • cat.png
    1. 進(jìn)入安裝插件,選擇自定義安裝 然后下一步下一步.等待安裝.
  • 安裝.png
    1. 創(chuàng)建管理用戶和密碼
  • 用戶和密碼.png

4 設(shè)置全局工具

4.1 進(jìn)入 Global Tool Configuration菜單
  • Tool.png
4.2 配置Maven的setting.xml文件
  • setting.png
4.3 配置Maven環(huán)境變量
  • Maven.png
4.4 注意配置Maven

注意:MAVEN_HOME,如果是Docker安裝Jenkins的話,必須是Jenkins里面指定路徑的路徑,否則找不到文件路徑保錯,不管是JDK,還是Git都是同理.* /usr/local/maven3 is not a directory on the Jenkins master(but perhaps it exists on some agents)

  • image.png
4.5 配置Git環(huán)境變量
  • Git.png

5 系統(tǒng)設(shè)置

  • 5.1 SSH remote hosts 目標(biāo)SSH機(jī)器連接設(shè)置

SSH .png
  • 5.2 Publish over SSH 參數(shù)說明

參數(shù)名稱 參數(shù)說明
Passphrase 操作用戶 SSH Key 的密碼,如果未設(shè)置,可以不填
Path to key jenkins用戶 SSH 私鑰key的路徑
Key jenkins用戶的ssh 私鑰的內(nèi)容
name ssh連接的名稱,可以隨意取,有意義就OK
Host Name 遠(yuǎn)程服務(wù)器的域名/IP,建議是IP
Username 遠(yuǎn)程系統(tǒng)的用戶名
Remote Directoey 遠(yuǎn)程目錄
  • 5.3 Publish over SSH 機(jī)器圖解

  • 機(jī)器圖解.png

6 添加全局用戶名憑證

  • 憑證.png

7 憑證類型方式

憑證類型方式.png

8 插件安裝

【注意】安裝插件這邊非常重要.整個部署會依賴這些插件才能整合devops部署

8.1 SSH 插件安裝
  • Publish Over SSh 用于SSH發(fā)布
  • SSH 用于SSH連接服務(wù)器
  • SSH .png
8.2 Maven Release Plug-in插件安裝
  • Maven .png
8.3 Git Parameter Plug-In 動態(tài)參數(shù)設(shè)置
  • Git Parameter Plug-In 用于Git的動態(tài)參數(shù)獲取


    Git Parameter.png
  • 根據(jù)$git_tag動態(tài)獲取git的分支或者標(biāo)簽


    動態(tài).png
  • 根據(jù)構(gòu)建的git_tag參數(shù)的選擇

git_tag.png

9 、總結(jié)與其他說明

9.1 總結(jié)與建議

  • 1 、以上問題根據(jù)搭建 Docker+Jenkins 實(shí)際情況進(jìn)行總結(jié)整理,除了技術(shù)問題查很多網(wǎng)上資料通過進(jìn)行學(xué)習(xí)之后梳理與分享。

  • 2、 在學(xué)習(xí)過程中也遇到很多困難和疑點(diǎn),如有問題或誤點(diǎn),望各位老司機(jī)多多指出或者提出建議。本人會采納各種好建議和正確方式不斷完善現(xiàn)況,人在成長過程中的需要優(yōu)質(zhì)的養(yǎng)料。

  • 3、 希望此文章能幫助各位老鐵們更好去了解如何在 Docker 里面安裝 Jenkins,也希望你看了此文檔或者通過找資料進(jìn)行手動實(shí)操一遍學(xué)習(xí)效果會更好。

9.2 需要安裝的軟件環(huán)境

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容