最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解使用Jenkins自動編譯部署web應用

 更新時間:2018年06月27日 11:11:05   作者:gavid0124  
本篇主要介紹基于Jenkins實現(xiàn)持續(xù)集成的方式,通過案例介紹線上自動編譯及部署的配置過程,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

寫在前面

初步接觸持續(xù)集成自動化過程,本篇主要介紹基于Jenkins實現(xiàn)持續(xù)集成的方式,通過案例介紹線上自動編譯及部署的配置過程

持續(xù)集成

持續(xù)集成是一種軟件開發(fā)實踐,即團隊開發(fā)成員經(jīng)常集成它們的工作,通過每個成員每天至少集成一次,也就意味著每天可能會發(fā)生多次集成。每次集成都通過自動化的構(gòu)建(包括編譯,發(fā)布,自動化測試)來驗證,從而盡早地發(fā)現(xiàn)集成錯誤。

Jenkins

Jenkins是基于Java開發(fā)的一種持續(xù)集成工具,用于監(jiān)控持續(xù)重復的工作,功能包括:

1、持續(xù)的軟件版本發(fā)布/測試項目。

2、監(jiān)控外部調(diào)用執(zhí)行的工作。

更多信息請戳官網(wǎng)

安裝

網(wǎng)上有很多Jenkins安裝配置教程,詳情請戳Jenkins安裝與配置

背景

Jenkins運行在Linux服務器上,嘗試在此服務器上編譯并部署一個web應用,編譯過程需要node環(huán)境,編譯后文件需ssh到測試服務器

Jenkins主要完成任務如下:1、自動集成編譯環(huán)境2、線上編譯應用3、ssh到目標環(huán)境并運行

新建一個Job

登錄進入Jenkins,可以看到當前所有已集成項目的構(gòu)建情況;

1、點擊左上角的【新建】,創(chuàng)建一個新任務

2、填寫任務名稱,構(gòu)建的項目類型可根據(jù)實際情況進行選擇,本次選擇第一種即可

3、選擇完畢,點擊【OK】,回到首頁,發(fā)現(xiàn)創(chuàng)建的Job已顯示在列表中

配置編譯環(huán)境

在這個過程中,我們需要為應用配置基于node的編譯環(huán)境。

關(guān)于安裝node,一般可以下載執(zhí)行文件安裝或編譯源碼安裝,而通過Jenkins,我們則可考慮使用其提供的插件進行自動安裝

1、選擇系統(tǒng)管理->管理插件

2、可以看到,Jenkins提供了豐富的插件供開發(fā)者使用,找到我們需要的[NodeJS Plugin],勾選后點擊安裝即可

3、安裝完畢后,選擇系統(tǒng)管理->Global Tool Configuration,配置node下載及安裝

4、進入后,擼到底部,發(fā)現(xiàn)全局可用工具中已經(jīng)出現(xiàn)了NodeJS的配置項5、插件支持多種方式安裝nodeJS,點擊[新建安裝],選擇習慣的安裝方式即可,此處給出從node官網(wǎng)下載并安裝的配置

6、保存完畢后,通過列表,進入剛剛新建的Job,找到【構(gòu)建環(huán)境】,勾選Provide Node & npm bin/ folder to PATH,選擇剛剛添加的配置即可;此后當每次build,都會首先執(zhí)行環(huán)境構(gòu)建,環(huán)境構(gòu)建無誤后,才會開始真正的構(gòu)建過程

配置構(gòu)建過程

在這個過程中,我們可以配置構(gòu)建所需的參數(shù),用來指明構(gòu)建的位置(從哪個分支/哪個版本...)或其他一些狀態(tài);并通過命令執(zhí)行構(gòu)建。

1、通過列表進入Job詳情,開始相關(guān)配置;

2、【General】一欄需要配置項目基礎(chǔ)信息和一些構(gòu)建需要的參數(shù)。選擇【參數(shù)化構(gòu)建】,此構(gòu)建方式允許我們自定義構(gòu)建過程中的參數(shù)。如下:配置一個branch參數(shù),用于指明要構(gòu)建的git分支

3、【源碼管理】一欄需要填寫待構(gòu)建項目的源碼地址,其中【Branches to build】用來指明待構(gòu)建的分支,當然,也可以選擇某個提交號,同時此處也可以使用我們在General中定義變量(詳細配置見輸入框右側(cè)的[幫助]按鈕)

4、【構(gòu)建】一欄需要輸入相關(guān)命令來實現(xiàn)自動化構(gòu)建,此過程在【環(huán)境構(gòu)建】后,故我們可以編寫如下代碼執(zhí)行構(gòu)建

5、線上編譯完畢,下面將build完成的文件發(fā)送至目標環(huán)境(測試環(huán)境/生產(chǎn)環(huán)境)。繼續(xù)在【構(gòu)建】一欄中添加配置,指定目標環(huán)境相關(guān)信息;命令行配置ssh后的一些操作(解壓文件,并刪除壓縮包)

執(zhí)行構(gòu)建

至此,整個構(gòu)建的配置算是基本完成,下面開始構(gòu)建。回到列表頁,點擊構(gòu)建即可:

可以看到構(gòu)建歷史列表中顯示當前構(gòu)建的進度

點擊左側(cè)圓形按鈕,即可進入控制臺查看輸出

構(gòu)建完畢后,可以通過列表中的晴雨狀態(tài)查看構(gòu)建結(jié)果

結(jié)語

本篇簡單介紹了基于Jenkins構(gòu)建的過程,Jenkins功能還有很多,會在之后的篇幅中陸續(xù)介紹。隨著項目開發(fā)規(guī)模和復雜度不斷增大,持續(xù)集成是一個必然的選擇。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java基礎(chǔ)概述面試題復習

    Java基礎(chǔ)概述面試題復習

    這篇文章主要介紹了java基礎(chǔ)面試題,文中的描述非常詳細,對正在學習java基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下,希望能給你帶來幫助
    2021-08-08
  • SpringBoot實現(xiàn)JPA多數(shù)據(jù)源配置小結(jié)

    SpringBoot實現(xiàn)JPA多數(shù)據(jù)源配置小結(jié)

    本文主要介紹了SpringBoot實現(xiàn)JPA多數(shù)據(jù)源配置小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-01-01
  • Java正則表達式循環(huán)匹配字符串方式

    Java正則表達式循環(huán)匹配字符串方式

    這篇文章主要介紹了Java正則表達式循環(huán)匹配字符串方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Java設(shè)計模式之外觀模式的實現(xiàn)方式

    Java設(shè)計模式之外觀模式的實現(xiàn)方式

    這篇文章主要介紹了Java設(shè)計模式之外觀模式的實現(xiàn)方式,外觀模式隱藏系統(tǒng)的復雜性,并向客戶端提供了一個客戶端可以訪問系統(tǒng)的接口,這種類型的設(shè)計模式屬于結(jié)構(gòu)型模式,它向現(xiàn)有的系統(tǒng)添加一個接口,來隱藏系統(tǒng)的復雜性,需要的朋友可以參考下
    2023-11-11
  • java集合之CopyOnWriteArrayList源碼解析

    java集合之CopyOnWriteArrayList源碼解析

    這篇文章主要介紹了java集合之CopyOnWriteArrayList源碼解析,容器array是volatile修飾的,即set和get方法都是線程安全的,整個添加過程上了鎖,所以整體是通過volatile和lock來保證的線程安全,需要的朋友可以參考下
    2023-12-12
  • 詳解Spring數(shù)據(jù)緩存注解@Cacheable、@CachePut、@CacheEvict

    詳解Spring數(shù)據(jù)緩存注解@Cacheable、@CachePut、@CacheEvict

    這篇文章主要介紹了詳解Spring數(shù)據(jù)緩存注解@Cacheable、CachePut、@CacheEvict,當以一組參數(shù)第一次調(diào)用某個方法時,返回值會被保存在緩存中,如果這個方法再次以相同的參數(shù)進行調(diào)用時,這個返回值會從緩存中查詢獲取,需要的朋友可以參考下
    2023-07-07
  • Mybatis基于MapperScan注解的動態(tài)代理加載機制詳解

    Mybatis基于MapperScan注解的動態(tài)代理加載機制詳解

    這篇文章主要介紹了Mybatis基于MapperScan注解的動態(tài)代理加載機制,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧
    2023-01-01
  • java利用delayedQueue實現(xiàn)本地的延遲隊列

    java利用delayedQueue實現(xiàn)本地的延遲隊列

    這篇文章主要給大家介紹了java利用delayedQueue實現(xiàn)本地的延遲隊列的相關(guān)資料,文中介紹的非常詳細,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-04-04
  • Spring配置多個數(shù)據(jù)源并實現(xiàn)動態(tài)切換示例

    Spring配置多個數(shù)據(jù)源并實現(xiàn)動態(tài)切換示例

    本篇文章主要介紹了Spring配置多個數(shù)據(jù)源并實現(xiàn)動態(tài)切換示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • 詳解SpringBoot之添加單元測試

    詳解SpringBoot之添加單元測試

    本篇文章主要介紹了詳解SpringBoot之添加單元測試,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07

最新評論

彩票| 涪陵区| 陆川县| 论坛| 久治县| 靖远县| 皮山县| 张家界市| 云龙县| 漳浦县| 堆龙德庆县| 长阳| 泰和县| 庆城县| 濮阳市| 新源县| 东安县| 蕉岭县| 望城县| 竹溪县| 永州市| 郸城县| 连江县| 保定市| 建德市| 大洼县| 西畴县| 芷江| 合水县| 建始县| 邓州市| 历史| 麻栗坡县| 新晃| 德令哈市| 文昌市| 旬邑县| 罗城| 工布江达县| 叶城县| 滨海县|