一、讓我們來了解一下什麼是jenkins
Jenkins是一個開源軟件項目,是基於Java開發的一種持續集成工具,用於監控持續重複的工作,旨在提供一個開放易用的軟件平臺,使軟件的持續集成變成可能。
簡而言之,jenkins就是一款將構建,測試,打包,發佈,部署等一系列繁瑣的操作用jenkins來自動化實現,解放雙手。
二、jenkins的安裝和基本配置
2.運行 java -jar jenkins.war(注意:Jenkins 需要運行 Java 5以及以上的版本。)
方式二:1.下載最新的版本msi文件,如圖
2.運行該文件並按步驟一步一步安裝下去即可。
Jenkins的基本配置:
首先打開系統管理中的Global Tool Configuration
按照下圖配置JDK,其中別名隨意起,java_home路徑爲當前機器的路徑
按照下圖配置Maven,其中Name隨意起,MAVEN_HOME路徑爲當前機器的路徑
可以在系統管理中的系統設置中設置一些如郵件發送的全局配置
可以在系統管理中的插件管理中安裝需要的插件如maven插件和pipleine插件
jenkins的基本操作
點擊新建按鈕可以新建一個jenkins項目如何:
點擊項目名稱可以查看一個jenkins項目的具體信息:
點擊版本號可以查看該項目該版本的具體信息:
如何構建一個maven項目
第一:首先下載maven插件:
第二:點擊新建選擇構建一個maven項目並填寫名稱
第三:配置項目:
一:源碼管理:url爲svn路徑,Credentials爲有權限的svn賬號 ,Local module directory :該項填寫會在jenkins的項目文件夾下增加一個該名稱的文件夾
源碼管理:如圖,填寫:
第三:配置項目:
二:配置構建觸發器:
二:配置構建觸發器:1:Build after other projects are built:在其他項目構建完成後再進行構建。
這裏又分三種情況:
①Trigger only if build is stable:其他項目構建成功
②Trigger even if the build is unstable:其他項目不穩定
③Trigger even if the build fails:其他項目構建失敗
2:Build periodically:週期進行構建
例如:0 4 * * * (每天凌晨4點必須構建一次源碼)
3:Poll SCM:根據SCM軟件的版本號,定時檢查源碼變更。如果有更新,則checkout最新code,然後執行構建動作。
例如:*/10 * * * * (每10分鐘檢查一次源碼變化,如果有更新才build)
三:構建環境配置:
1:Pre Steps:build前操作,可用腳本直接寫命令;
2:Build之Root POM,此處填寫項目的pom文件的名稱,Build之Goals and options此處填寫你需要的maven命令如clean install;
3:Post Steps:build後操作,可用腳本直接寫命令,如深航遠程項目的自動化部署
三:構建環境配置:
三:構建後操作:可用於配置構建完成後的一系列操作,可用插件來完成,如構建失敗後發送郵件。
pipeline是什麼
Jenkins Pipeline或者簡稱Pipeline其實是一系列的插件的通稱, 這些插件可以支持執行和集成‘continuous delivery piplines’到Jenkins裏面。
什麼是"continuous delivery pipline"其實是描述項目軟件控制流程, 從軟件的版本控制到最終提交給終端用戶這一系列的流程的自動部署。大家知道每次代碼的提交(提交到SVN/GIT/Github等代碼控制工具)到最終代碼發佈給終端用戶都要經歷一系列複雜的流程.這個流程包括編譯(build),然後多階段的測試:unit test, api test, integration test等和部署階段。
pipleine與maven項目相比有什麼優勢
maven項目從svn check代碼到將項目自動部署完畢這些過程都是一連串完成的,當一次構建失敗後我們除了查看日誌很難直接明瞭的定位錯誤發生在哪個過程中,而pipleine將這些過程分爲一個一個stage,執行完前面的stage纔會執行後面的stage,這樣就把這些過程很清晰明瞭的展現出來,當發生錯誤的時候也能很快的定位了,而且當你不想執行其中的一些步驟的也可以通過不配置就能實現
maven項目構建失敗圖:
pipleine項目構建失敗圖:
如何構建一個pipeline項目
第一:首先下載pipeline插件:
第二:點擊新建選擇構建一個pipeline項目並填寫名稱
三:配置構建觸發器:
四:配置流水線:
四:配置流水線:1:點擊
2:Sample Step選擇
3:SCM選擇
4:其餘步驟參照上面的源碼管理部分,提醒
Local module directory部分不填爲與docker結合做準備
5.配置好後點擊
6.將生成的語句放入script的stage('get clone'){}中即可
pipeline項目與docker的結合在jenkins這邊要配置的東西不多隻有2點:
第一:check源碼時Local module directory不填,
第二:將 bat "mvn clean package docker:build" 命令放入script的stage('deploy'){}部分即可。
其餘主要爲docker的安裝及docker在源碼中要添加的東西
pipeline項目與docker的結合的注意點,具體的還要結合項目具體來說,本文主要介紹的就是這些如有問題還請多多提問
總結
主要就是說一下jenkins的安裝和基本操作,以及如何和docker搭配使用,大家有什麼問題可以留言。