




已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
課程概要:1. jenkins 概述與環(huán)境配置2. 基于jenkins 實(shí)現(xiàn)可持續(xù)化集成3. jenkins pipeline 核心應(yīng)用一、jenkins 概述與環(huán)境配置知識(shí)點(diǎn):1. 關(guān)于可持續(xù)化集成 (CI)2. jenkins 概述3. 下載安裝jenkins 4. 基礎(chǔ)環(huán)境配置與常用插件下載1、關(guān)于可持續(xù)化集成相信大家都知道jenkins是用來做可持續(xù)集成的? 但部問題是很多人并不明白什么叫可持續(xù)化集成。講概念之前我們先來舉一個(gè)場(chǎng)景:一個(gè)團(tuán)隊(duì)正著手開發(fā)一個(gè)項(xiàng)目,在需求評(píng)審之后由小組長(zhǎng)把項(xiàng)目拆成了若干個(gè)模塊,分給不同的小伙伴去實(shí)現(xiàn)。2個(gè)星期以后各自模塊的功能都實(shí)現(xiàn)了,大家都很開心。這時(shí)該合在一起提測(cè)了吧。這一合小組長(zhǎng)傻眼了,功能沒一個(gè)能用的,要么公共類沖突了,要么配置沖突.經(jīng)過上次的教訓(xùn),小組長(zhǎng)變聰明了,在也不等功能開發(fā)之后在合并提測(cè)了,而是每天集成提測(cè),如果發(fā)現(xiàn)沖突當(dāng)天就要解決。持續(xù)集成即 Continuous integration(CI) 是一種軟件開發(fā)實(shí)踐,即團(tuán)隊(duì)開發(fā)成員經(jīng)常集成他們的工作,每次集成都通過自動(dòng)化的構(gòu)建(包括編譯,發(fā)布,自動(dòng)化測(cè)試)來驗(yàn)證,從而盡快地發(fā)現(xiàn)集成錯(cuò)誤,讓團(tuán)隊(duì)能夠更高效的開發(fā)軟件。持續(xù)集成要點(diǎn):l 統(tǒng)一的代碼庫(kù)(git)l 統(tǒng)一的依賴包管理(nexus)l 測(cè)試自動(dòng)化l 構(gòu)建全自動(dòng)化(maven)l 部署自動(dòng)化l 可追蹤的集成記錄2、jenkins 概述jenkins 就是為了滿足上述持續(xù)集成的要點(diǎn)而設(shè)計(jì)的一款工具,其主體框架采用JAVA開發(fā),實(shí)質(zhì)內(nèi)部功能都是由各種插件實(shí)現(xiàn),極大提高了系統(tǒng)的擴(kuò)展性。其不僅可以滿足JAVA系統(tǒng)的集成,也可以實(shí)現(xiàn)PHP等語(yǔ)言的集成發(fā)布。通過其pipeline 插件,用戶可以隨自己需要定制集成流程。2、下載安裝jenkins 下載:jenkins 支持Docker、yum、msi 等安裝,在這里推薦大家直接選擇下載他對(duì)應(yīng)的WAR包進(jìn)行安裝。https:/jenkins.io/download/啟動(dòng):下載完成之后直接可通過 jar -jar 命令啟動(dòng)java -jar jenkins.war -httpPort=8080也可以將其放至到servlet容器(tomcatjettyjboss)中直接啟動(dòng),無需過多的配置,一切插件化這是jenkins 比較優(yōu)秀的設(shè)計(jì)。配置:下載完成之后進(jìn)入啟動(dòng)頁(yè)(:8080/) 會(huì)有一個(gè) 驗(yàn)證過程,驗(yàn)證碼存儲(chǔ)在 $user_home.jenkinssecretsinitialAdminPassword 中,接著就是進(jìn)入安裝插件頁(yè),選擇默認(rèn)即可,這個(gè)過程稍長(zhǎng)。3、基礎(chǔ)環(huán)境配置與常用插件下載在集成的時(shí)候,jenkins 用到了 Maven 、Git 所以服務(wù)器中必須提前安裝好這些環(huán)境,具體參照前面的git與maven 課程。插件下載更換源 -系統(tǒng)管理-管理插件-高級(jí)-升級(jí)站點(diǎn)把:/update-center.json換成:http:/mirror.esuni.jp/jenkins/updates/update-center.json鏡像源查詢:/status.html基本插件列表插件名稱插件描述Maven Integration maven 管理插件Deploy to container容器部署插件Pipeline管道集成插件Email Extension 郵件通知插件SSH用于ssh 通信二、基于jenkins 實(shí)現(xiàn)可持續(xù)化集成知識(shí)點(diǎn):1. 持續(xù)化集成完成的目標(biāo)2. 持續(xù)化集成配置3. 集成實(shí)現(xiàn)原理1、 持續(xù)化集成完成的目標(biāo)需要到達(dá)的目標(biāo)如下:1. 自動(dòng)基于分支構(gòu)建項(xiàng)目2. 構(gòu)建好的項(xiàng)目自動(dòng)部署至Tomcat容器3. 構(gòu)建好的項(xiàng)目自動(dòng)上傳至Nexus 私服存檔4. 保存構(gòu)建歷史記錄,并可以下載歷史記錄2、持續(xù)化集成配置1. 新建maven job2. 配置checkout 源碼3. 編寫 maven構(gòu)建 命令4. 自動(dòng)部署至Tomcat配置添加構(gòu)建后操作:Deploy war/ear to container 項(xiàng)目自動(dòng)部署的前提條件:1. 需要下載 Deploy to container 插件2. 設(shè)置Tomcat manager 用戶和密碼,以下配置加入至 Tomcat conf/tomcat-users.xml 中3. tomcat webapp 中必須保留 manager 項(xiàng)目5. 存檔配置構(gòu)建后操作添加 Deploy war/ear to a container 項(xiàng)目配置setting.xml 用于獲取上傳至nexus 的權(quán)限vim /.m2/settings.xml# 添加一個(gè) server id 與 存檔配置當(dāng)中的repository id 相對(duì)應(yīng)。 nexusReleases deployment 1111113、集成實(shí)現(xiàn)原理三、jenkins pipeline 核心應(yīng)用知識(shí)點(diǎn):1. pipeline 概要2. pipeline 基礎(chǔ)語(yǔ)法3. pipeline Demo演示1、pipeline 概要前面我們演示的 使用maven 來進(jìn)行自動(dòng)化構(gòu)建,其流程分別是:構(gòu)建環(huán)境準(zhǔn)備=源碼下載 =構(gòu)建 =存檔 =部署。這是一種固化的構(gòu)建流程,如果你們的需求是多個(gè)項(xiàng)目需要進(jìn)行依賴構(gòu)建這種復(fù)雜的構(gòu)建場(chǎng)景 時(shí)該怎么辦?jenkins pipeline 可以做到這一點(diǎn)。 Jenkins從根本上講是一種支持多種自動(dòng)化模式的自動(dòng)化引擎。Pipeline在Jenkins上添加了一套強(qiáng)大的自動(dòng)化工具,支持從簡(jiǎn)單的連續(xù)集成到全面的連續(xù)輸送Pipeline的用例。用戶可以基于他實(shí)現(xiàn)更為復(fù)雜的建模場(chǎng)景。2、pipeline 基礎(chǔ)語(yǔ)法以下就是一個(gè)非常簡(jiǎn)單的 pipeline 腳本:pipeline agent any stages stage(Build) steps sh make stage(Test) steps sh make check junit reports/*/*.xml stage(Deploy) steps sh make publish agent 表示Jenkins應(yīng)該為Pipeline的這一部分分配一個(gè)執(zhí)行者和工作區(qū)。stage 描述了這條Pipeline的一個(gè)階段。steps 描述了要在其中運(yùn)行的步驟stagesh 執(zhí)行給定的shell命令junit 是由JUnit插件提供的用于聚合測(cè)試報(bào)告的Pipeline步驟。3、pipeline Demo演示前提條件1. Jenkins 2.x或更高版本2. Pipeline插件可以通過以下任一方式創(chuàng)建基本Pipeline:1. 直接在Jenkins網(wǎng)頁(yè)界面中輸入腳本。2. 通過創(chuàng)建一個(gè)Jenkinsfile可以檢入項(xiàng)目的源代碼管理庫(kù)。用任一方法定義Pipeline的語(yǔ)法是一樣的,從項(xiàng)目源碼中檢入jenkinsfile 文件會(huì)更方便一些?;谀_本構(gòu)建 pipelinepipeline agent any stages stage(Checkout) steps echo Checkout stage(Build) steps echo Building stage(test) steps echo test 基于Jenkinsfile 構(gòu)建pipeline agent any stages stage(checkout) steps echo checkout checkout($class: GitSCM, branches: name: */master, doGenerateSubmoduleConfigurations: false, extensions: , submoduleCfg: , userRemoteConfigs: credentialsId: gogs_l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年公路橋梁工程師考試試卷及答案
- 2025年國(guó)際經(jīng)濟(jì)法考試題及答案
- 低空經(jīng)濟(jì)中智能無人機(jī)的應(yīng)用與挑戰(zhàn)
- 門窗制作安裝承包合同書
- 行路難主題思想深度解析:九年級(jí)語(yǔ)文古詩(shī)文閱讀教學(xué)教案
- 那場(chǎng)大雨中的溫暖情感作文(8篇)
- 雨天的回憶記一次難忘的雨天經(jīng)歷作文12篇
- 美容行業(yè)皮膚護(hù)理知識(shí)點(diǎn)測(cè)驗(yàn)題目集
- 農(nóng)民合作參與農(nóng)業(yè)生產(chǎn)資源整合協(xié)議
- 一件感到慚愧的事700字15篇范文
- ISO-10358-1993譯文-塑料管材和管件-耐化學(xué)性綜合分類表
- 康復(fù)進(jìn)修匯報(bào)
- 基于單片機(jī)的糧倉(cāng)環(huán)境監(jiān)測(cè)系統(tǒng)設(shè)計(jì)畢業(yè)論文
- 電力行業(yè)招投標(biāo)培訓(xùn)
- 2024年云南省中考物理試題含答案
- 2024年石家莊市市屬國(guó)企業(yè)面向社會(huì)公開招聘403名管理人員及專業(yè)技術(shù)人員高頻難、易錯(cuò)點(diǎn)500題模擬試題附帶答案詳解
- 醫(yī)藥代表聘用合同模板
- 2024-2030年中國(guó)公路工程行業(yè)市場(chǎng)發(fā)展分析及前景預(yù)判與投資研究報(bào)告
- 工傷預(yù)防宣傳和培訓(xùn) 投標(biāo)方案(技術(shù)方案)
- 古代小說戲曲專題-形考任務(wù)4-國(guó)開-參考資料
- 2.4圓周角(第1課時(shí))(課件)九年級(jí)數(shù)學(xué)上冊(cè)(蘇科版)
評(píng)論
0/150
提交評(píng)論