這篇文章將為大家詳細(xì)講解有關(guān)Jenkins怎么實(shí)現(xiàn)自動(dòng)編譯部署web應(yīng)用,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
成都創(chuàng)新互聯(lián)公司主要業(yè)務(wù)有網(wǎng)站營(yíng)銷策劃、網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、微信小程序開發(fā)、html5、程序開發(fā)等業(yè)務(wù)。一次合作終身朋友,是我們奉行的宗旨;我們不僅僅把客戶當(dāng)客戶,還把客戶視為我們的合作伙伴,在開展業(yè)務(wù)的過(guò)程中,公司還積累了豐富的行業(yè)經(jīng)驗(yàn)、成都全網(wǎng)營(yíng)銷推廣資源和合作伙伴關(guān)系資源,并逐漸建立起規(guī)范的客戶服務(wù)和保障體系。持續(xù)集成
持續(xù)集成是一種軟件開發(fā)實(shí)踐,即團(tuán)隊(duì)開發(fā)成員經(jīng)常集成它們的工作,通過(guò)每個(gè)成員每天至少集成一次,也就意味著每天可能會(huì)發(fā)生多次集成。每次集成都通過(guò)自動(dòng)化的構(gòu)建(包括編譯,發(fā)布,自動(dòng)化測(cè)試)來(lái)驗(yàn)證,從而盡早地發(fā)現(xiàn)集成錯(cuò)誤。
Jenkins
Jenkins是基于Java開發(fā)的一種持續(xù)集成工具,用于監(jiān)控持續(xù)重復(fù)的工作,功能包括:
1、持續(xù)的軟件版本發(fā)布/測(cè)試項(xiàng)目。
2、監(jiān)控外部調(diào)用執(zhí)行的工作。
更多信息請(qǐng)戳官網(wǎng)
安裝
網(wǎng)上有很多Jenkins安裝配置教程,詳情請(qǐng)戳Jenkins安裝與配置
背景
Jenkins運(yùn)行在Linux服務(wù)器上,嘗試在此服務(wù)器上編譯并部署一個(gè)web應(yīng)用,編譯過(guò)程需要node環(huán)境,編譯后文件需ssh到測(cè)試服務(wù)器
Jenkins主要完成任務(wù)如下:1、自動(dòng)集成編譯環(huán)境2、線上編譯應(yīng)用3、ssh到目標(biāo)環(huán)境并運(yùn)行
新建一個(gè)Job
登錄進(jìn)入Jenkins,可以看到當(dāng)前所有已集成項(xiàng)目的構(gòu)建情況;
1、點(diǎn)擊左上角的【新建】,創(chuàng)建一個(gè)新任務(wù)
2、填寫任務(wù)名稱,構(gòu)建的項(xiàng)目類型可根據(jù)實(shí)際情況進(jìn)行選擇,本次選擇第一種即可
3、選擇完畢,點(diǎn)擊【OK】,回到首頁(yè),發(fā)現(xiàn)創(chuàng)建的Job已顯示在列表中
配置編譯環(huán)境
在這個(gè)過(guò)程中,我們需要為應(yīng)用配置基于node的編譯環(huán)境。
關(guān)于安裝node,一般可以下載執(zhí)行文件安裝或編譯源碼安裝,而通過(guò)Jenkins,我們則可考慮使用其提供的插件進(jìn)行自動(dòng)安裝
1、選擇系統(tǒng)管理->管理插件
2、可以看到,Jenkins提供了豐富的插件供開發(fā)者使用,找到我們需要的[NodeJS Plugin],勾選后點(diǎn)擊安裝即可
3、安裝完畢后,選擇系統(tǒng)管理->Global Tool Configuration,配置node下載及安裝
4、進(jìn)入后,擼到底部,發(fā)現(xiàn)全局可用工具中已經(jīng)出現(xiàn)了NodeJS的配置項(xiàng)5、插件支持多種方式安裝nodeJS,點(diǎn)擊[新建安裝],選擇習(xí)慣的安裝方式即可,此處給出從node官網(wǎng)下載并安裝的配置
6、保存完畢后,通過(guò)列表,進(jìn)入剛剛新建的Job,找到【構(gòu)建環(huán)境】,勾選Provide Node & npm bin/ folder to PATH,選擇剛剛添加的配置即可;此后當(dāng)每次build,都會(huì)首先執(zhí)行環(huán)境構(gòu)建,環(huán)境構(gòu)建無(wú)誤后,才會(huì)開始真正的構(gòu)建過(guò)程
配置構(gòu)建過(guò)程
在這個(gè)過(guò)程中,我們可以配置構(gòu)建所需的參數(shù),用來(lái)指明構(gòu)建的位置(從哪個(gè)分支/哪個(gè)版本...)或其他一些狀態(tài);并通過(guò)命令執(zhí)行構(gòu)建。
1、通過(guò)列表進(jìn)入Job詳情,開始相關(guān)配置;
2、【General】一欄需要配置項(xiàng)目基礎(chǔ)信息和一些構(gòu)建需要的參數(shù)。選擇【參數(shù)化構(gòu)建】,此構(gòu)建方式允許我們自定義構(gòu)建過(guò)程中的參數(shù)。如下:配置一個(gè)branch
參數(shù),用于指明要構(gòu)建的git分支
3、【源碼管理】一欄需要填寫待構(gòu)建項(xiàng)目的源碼地址,其中【Branches to build】用來(lái)指明待構(gòu)建的分支,當(dāng)然,也可以選擇某個(gè)提交號(hào),同時(shí)此處也可以使用我們?cè)贕eneral中定義變量(詳細(xì)配置見輸入框右側(cè)的[幫助]按鈕)
4、【構(gòu)建】一欄需要輸入相關(guān)命令來(lái)實(shí)現(xiàn)自動(dòng)化構(gòu)建,此過(guò)程在【環(huán)境構(gòu)建】后,故我們可以編寫如下代碼執(zhí)行構(gòu)建
5、線上編譯完畢,下面將build完成的文件發(fā)送至目標(biāo)環(huán)境(測(cè)試環(huán)境/生產(chǎn)環(huán)境)。繼續(xù)在【構(gòu)建】一欄中添加配置,指定目標(biāo)環(huán)境相關(guān)信息;命令行配置ssh后的一些操作(解壓文件,并刪除壓縮包)
執(zhí)行構(gòu)建
至此,整個(gè)構(gòu)建的配置算是基本完成,下面開始構(gòu)建。回到列表頁(yè),點(diǎn)擊構(gòu)建即可:
可以看到構(gòu)建歷史列表中顯示當(dāng)前構(gòu)建的進(jìn)度
關(guān)于Jenkins怎么實(shí)現(xiàn)自動(dòng)編譯部署web應(yīng)用就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。