jenkins 自動(dòng)遠(yuǎn)程發(fā)布到服務(wù)器

jenkins 自動(dòng)遠(yuǎn)程發(fā)布到服務(wù)器

1.安裝jenkins

安裝過(guò)程:自行百度

英文不好的,不要裝最新版的jenkins。建議安裝Jenkins ver. 2.138.4,此版本可以設(shè)置中文語(yǔ)言,設(shè)置如圖

image.png

2.安裝主要插件

系統(tǒng)管理 > 插件管理,在可選插件中,搜索插件


image.png
1)Publish Over SSH

Send build artifacts over SSH
用于上傳發(fā)布構(gòu)建之后的war、jar包等資源,然后執(zhí)行服務(wù)器腳本命令,功能很強(qiáng)大

2)Dingding[釘釘] Plugin
image.png

安裝釘釘通知的插件。用于構(gòu)建完成之后的消息通知。

3.配置環(huán)境

插件安裝完成之后,需要配置環(huán)境。

1)系統(tǒng)管理>系統(tǒng)設(shè)置
image.png
  • Hostname:主機(jī)地址(ip或者域名)
  • Port:端口號(hào)
  • Root Repository Path:連接之后的默認(rèn)目錄
  • User Name:用戶名
  • Password/Passphrase:密碼秘鑰
2)系統(tǒng)管理>全局工具配置
配置maven信息:

設(shè)置setting文件


image.png

設(shè)置maven安裝目錄


image.png
配置JDK

配置jdk安裝目錄


image.png

4.創(chuàng)建job

1)創(chuàng)建一個(gè)Job,名為MyTestJob

任務(wù)名稱可以自定義,選擇構(gòu)建【構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目】


image.png

2)構(gòu)建設(shè)置

如果磁盤空間小,這里可以設(shè)置自動(dòng)刪除策略。如圖設(shè)置,表示保留2天的構(gòu)建,最多2個(gè)


image.png

3)源碼管理

本地使用的SVN,所以以SVN為例。


image.png

Repository URL: SVN的資源地址,路徑直接到項(xiàng)目路徑【本文演示的也是maven項(xiàng)目】如:項(xiàng)目名稱為myProject,那么svn地址就要寫到myProject,https://192.168.1.XXX:XXX/svn/XXX/XXX/myProject
Credentials: 先添加個(gè)SVN賬號(hào),點(diǎn)add

image.png

ID設(shè)置一個(gè)唯一的,其他就是用戶名密碼。
設(shè)置完成之后,就可以下拉選擇
image.png

其他的就默認(rèn)

4)構(gòu)建觸發(fā)器

定時(shí)構(gòu)建: 不管SVN或Git中數(shù)據(jù)有無(wú)變化,均執(zhí)行定時(shí)化的構(gòu)建任務(wù) ;

輪詢SCM: 只要SVN或Git中數(shù)據(jù)有更新,則執(zhí)行構(gòu)建任務(wù);

構(gòu)建語(yǔ)法說(shuō)明:

格式為:* * * * (五個(gè)星);
第一個(gè)
表示分鐘,取值0~59
第二個(gè)表示小時(shí),取值0~23
第三個(gè)
表示一個(gè)月的第幾天,取值1~31
第四個(gè)表示第幾月,取值1~12
第五個(gè)
表示一周中的第幾天,取值0~7,其中0和7代表的都是周日

使用舉例

每隔10分鐘構(gòu)建一次:H/5 * * * *
每隔1小時(shí)構(gòu)建一次: H H/1 * * *
每月30號(hào)構(gòu)建一次: H H 30 * *

定時(shí)構(gòu)建和輪詢SCM使用互不沖突,可以需要根據(jù)項(xiàng)目情況配置。我這里測(cè)試環(huán)境使用【輪詢 SCM】已經(jīng)能滿足需求。每五分鐘檢查一次svn更新,如有更新則進(jìn)行構(gòu)建。


image.png

5)構(gòu)建

其實(shí)構(gòu)建之前可以設(shè)置構(gòu)建環(huán)境,可以根據(jù)項(xiàng)目需要去設(shè)置。
基于maven可以使用maven進(jìn)行構(gòu)建

image.png

Maven 版本: 選擇之前配置的maven版本
目標(biāo): 設(shè)置maven構(gòu)建語(yǔ)句【不用寫mvn】
image.png

配置完maven信息之后,新增ssh配置:
image.png

上傳服務(wù)器文件路徑說(shuō)明:

最終上傳到服務(wù)器的文件路徑為:
系統(tǒng)設(shè)置里的Remote Directory + 構(gòu)建里的 Remote Directory + Source files
如圖即為:A + C + B

image.png

Source files: 相對(duì)于workspace目錄,其實(shí)也就相當(dāng)于在myproject目錄下,maven構(gòu)建之后,會(huì)在該目錄下生成target目錄,所以此處可以填寫target\XXX.war
Remove prefix: 移除Source files的前綴。填寫target 如果刪除target的話,最終上傳的時(shí)候也會(huì)帶著target目錄
Remote Directory: 在系統(tǒng)設(shè)置里的Remote Directory 下,生成此處的Remote Directory目錄
Exec command: 上傳之后執(zhí)行的命令行,可以在服務(wù)器制作sh腳本,比如停止tomcat,拷貝war包到tomcat,然后啟動(dòng)tomcat。
此處命令后期可以在補(bǔ)充上。

6)構(gòu)建后操作

當(dāng)然jenkins自動(dòng)幫我們發(fā)布了,我們不可能時(shí)時(shí)刻刻都盯著jenkins控制臺(tái),我們需要它提醒我們,我們可以選擇配置郵件提醒等等,為了方便,我們可以使用釘釘通知。

釘釘群設(shè)置

image.png

創(chuàng)建個(gè)團(tuán)隊(duì)釘釘群,在釘釘群設(shè)置里添加【群機(jī)器人】,點(diǎn)擊添加
image.png

選擇自定義,設(shè)置完頭像和名稱
image.png

之后會(huì)得到一個(gè)url
https://oapi.dingtalk.com/robot/send?access_token=XXXXXXXXXX
access_token參數(shù)下面設(shè)置需要使用

釘釘通知設(shè)置

新增構(gòu)建后操作,選擇訂單通知。


image.png

jenkins URL: 輸入當(dāng)然jenkins的訪問地址
釘釘access token:即為釘釘群機(jī)器人的url中的access_token參數(shù)
其他的就是選擇釘釘機(jī)器人提醒的時(shí)機(jī)。添加完成之后,jenkins構(gòu)建就會(huì)及時(shí)提醒團(tuán)隊(duì)成員。

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

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

  • 你,真的還好嗎?你是否還會(huì)偶爾停下來(lái)想一想我呢?你到底有沒有記起過(guò)一些小小的片段呢? 我還記得那句:“我是湯圓,你...
    孟小苒閱讀 489評(píng)論 1 1
  • 今天是個(gè)令人開森的日子,一大早的,就感受到了被牽掛被關(guān)心的幸福,不表示點(diǎn)什么實(shí)在是說(shuō)不過(guò)去。嗯,那就畫兩個(gè)...
    80b56b1557e5閱讀 1,102評(píng)論 12 28
  • 都挺好,歡樂頌,我喜歡安迪,同情樊勝美,更敬佩蘇明玉,但是今天我想寫給樊勝美,在我的世界里,你存在了好久。 對(duì)于樊...
    一支光閱讀 286評(píng)論 0 0

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