Jenkins+Springboot+Git自動(dòng)化部署

Jenkins安裝

到Jenkins的官網(wǎng):http://jenkins.io?下載jenkins.war

然后將jenkins.war文件上傳到Linux服務(wù)器谈飒,執(zhí)行

nohup jar -jar jenkins.war &

啟動(dòng)Jenkins

在頁(yè)面上如何授權(quán)碼進(jìn)入Jenkins基跑,授權(quán)碼可以在啟動(dòng)Jenkins的命令行中看到可款,只有第一次進(jìn)入時(shí)需要輸入授權(quán)碼

點(diǎn)擊Install suggested plugins行拢,安裝Jenkins建議安裝的插件囱晴,如果部分插件沒(méi)有安裝成功,可以重復(fù)多次霜定,直到所有的插件都安裝成功


創(chuàng)建用戶

再安裝幾個(gè)比較好用的Jenkins插件:Rebuilder噩翠、Safe Restart、Publish Over SSH言沐、Maven Integration 依次點(diǎn)擊:系統(tǒng)管理 -> 插件管理 -> 可選插件邓嘹,輸入插件名搜索插件

點(diǎn)擊直接安裝

給剛創(chuàng)建的用戶分配權(quán)限依次點(diǎn)擊:系統(tǒng)管理-> 全局安全配置 -> 安全矩陣 -> Add User or group name

點(diǎn)擊Add User or group name,添加自己的賬號(hào)(我的是admin賬號(hào))险胰,給賬號(hào)分配權(quán)限汹押,我是給該賬號(hào)所有的權(quán)限,如果是普通的賬號(hào)起便,可以去掉Administrator(第一個(gè)棚贾,系統(tǒng)管理的權(quán)限)

Linux服務(wù)器設(shè)置

安裝Java jdk:

?

yun install java

查看是否安裝成功:

java -version


安裝并配置Git

?

安裝Git命令:

yum install?git

查看git是否安裝成功:

git version

將git初始化并生成授權(quán)證書

設(shè)置用戶名和郵箱,用戶名和郵箱不需要是真實(shí)的個(gè)人信息

git?config --global user.name "admin"git?config --global user.email "admin@abc.com"

生成授權(quán)證書榆综,中間直接全部回車就行

ssh-keygen?-t?rsa?-C?"admin@abc.com"

查看證書是否生成成功

cd?~/.ssh/ll


id_rsa是私鑰妙痹,id_rsa.pub是公鑰

gitee證書配置

?

在gitee中依次點(diǎn)擊:設(shè)置 -> 安全設(shè)置 -> ssh公鑰,將公鑰中的內(nèi)容復(fù)制到公鑰文本框中鼻疮,隨便寫一個(gè)標(biāo)題即可

驗(yàn)證git的配置是否正確

ssh?git@gitee.com

安裝并配置maven

?

直接官網(wǎng)下載解壓安裝后在/etc/profile配置環(huán)境變量

export?MAVEN_HOME=/opt/apache-maven-3.6.1export?PATH=${MAVEN_HOME}/bin:$PATH

查看是否安裝成功

source /etc/profilemvn -version

將Linux注冊(cè)到Jenkins上

?

新建節(jié)點(diǎn)

在Jenkins中依次點(diǎn)擊:系統(tǒng)管理 -> 節(jié)點(diǎn)管理 -> 新建節(jié)點(diǎn)


點(diǎn)擊確定按鈕怯伊,然后配置Jenkins在Linux中的路徑、LInux服務(wù)器的IP地址判沟、Linux服務(wù)器的賬號(hào)和密碼

啟動(dòng)從節(jié)點(diǎn)驗(yàn)證Linux服務(wù)器已經(jīng)成功注冊(cè)到Jenkins上點(diǎn)擊我們剛添加的節(jié)點(diǎn)耿芹,然后點(diǎn)擊啟動(dòng)代理按鈕,連接Linux服務(wù)器

如果連接服務(wù)器時(shí)出現(xiàn)如下錯(cuò)誤信息

就將Host Key Verrification Strategy配置成Non Verfifying Verrification Strategy

新建Job驗(yàn)證Jenkins任務(wù)可以遠(yuǎn)程運(yùn)行在Linux服務(wù)器上

?

在Jenkins主頁(yè)點(diǎn)擊【開始創(chuàng)建一個(gè)新任務(wù)】按鈕水评,然后輸入任務(wù)名猩系,選擇構(gòu)建一個(gè)maven項(xiàng)目,注意:只有安裝了Maven Integration插件才有這個(gè)選項(xiàng)

點(diǎn)擊【確定】按鈕


shell腳本的內(nèi)容中燥,根據(jù)項(xiàng)目的實(shí)際需求編寫

#!/bin/shecho?"開始執(zhí)行shell腳本"# 在jenkins環(huán)境中一定要加這句話寇甸,否則這個(gè)腳本進(jìn)程最后會(huì)被殺死export?BUILD_ID=dontKillMe# 指定最后編譯好的jar的存放位置JAR_PATH=/opt/workspace/appserver# 如果路徑不存在,就創(chuàng)建路徑[ ! -e $JAR_PATH?] && mkdir -p $JAR_PATH# 指定jenkins中存放編譯好的jar的位置JENKINS_JAR_PATH=/home/wenbo/jenkins/workspace/testProject/target# 如果路徑不存在,就創(chuàng)建路徑[ ! -e $JENKINS_JAR_PATH?] && mkdir -p $JENKINS_JAR_PATH# 指定jenkins中存放編譯好的jar的名稱(這個(gè)jar的名字和pom文件配置有關(guān))JENKINS_JAR_NAME=appserver-0.0.4.jar# 獲取該項(xiàng)目的進(jìn)程號(hào)拿霉,用于重新部署項(xiàng)目前殺死進(jìn)程process_id=$(ps -ef | grep appserver | grep -v "grep"?| awk '{print $2}')# 如果該項(xiàng)目正在運(yùn)行吟秩,就殺死項(xiàng)目進(jìn)程if?[[ ! -z "$process_id"?]]then?

echo?"停止服務(wù)"

?? ?kill?-9 $process_idelse?

echo?"服務(wù)未啟動(dòng)"fi# 進(jìn)入Jenkins中編譯好的jar的位置cd?${JENKINS_JAR_PATH}# 將Jenkins中編譯好的jar復(fù)制到最終存放項(xiàng)目jar的位置cp $JENKINS_JAR_PATH/$JENKINS_JAR_NAME?$JAR_PATH# 進(jìn)入到存放項(xiàng)目jar的位置cd?${JAR_PATH}# 后臺(tái)啟動(dòng)項(xiàng)目,并且將控制臺(tái)日志輸出到nohup.out中nohup java -jar ${JENKINS_JAR_NAME}?--server.port=9000 -Dfile.encoding=UTF-8 >nohup.out &echo?"shell腳本執(zhí)行完畢"

然后點(diǎn)擊【立即構(gòu)建】按鈕绽淘,構(gòu)建項(xiàng)目涵防,點(diǎn)擊下面的#1就可以看到到項(xiàng)目的詳情


可以在控制臺(tái)輸出中查看到控制臺(tái)中打印出的內(nèi)容,可以看到剛才在shell中輸入的命令被執(zhí)行了


至此沪铭,我們的spring boot項(xiàng)目就自動(dòng)部署成功了壮池。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市杀怠,隨后出現(xiàn)的幾起案子椰憋,更是在濱河造成了極大的恐慌,老刑警劉巖赔退,帶你破解...
    沈念sama閱讀 218,122評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件橙依,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡硕旗,警方通過(guò)查閱死者的電腦和手機(jī)窗骑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)漆枚,“玉大人创译,你說(shuō)我怎么就攤上這事±硕粒” “怎么了昔榴?”我有些...
    開封第一講書人閱讀 164,491評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)碘橘。 經(jīng)常有香客問(wèn)我互订,道長(zhǎng),這世上最難降的妖魔是什么痘拆? 我笑而不...
    開封第一講書人閱讀 58,636評(píng)論 1 293
  • 正文 為了忘掉前任仰禽,我火速辦了婚禮,結(jié)果婚禮上纺蛆,老公的妹妹穿的比我還像新娘吐葵。我一直安慰自己,他們只是感情好桥氏,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評(píng)論 6 392
  • 文/花漫 我一把揭開白布温峭。 她就那樣靜靜地躺著,像睡著了一般字支。 火紅的嫁衣襯著肌膚如雪凤藏。 梳的紋絲不亂的頭發(fā)上奸忽,一...
    開封第一講書人閱讀 51,541評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音揖庄,去河邊找鬼栗菜。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蹄梢,可吹牛的內(nèi)容都是我干的疙筹。 我是一名探鬼主播,決...
    沈念sama閱讀 40,292評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼禁炒,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼而咆!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起齐苛,我...
    開封第一講書人閱讀 39,211評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤翘盖,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后凹蜂,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,655評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡阁危,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評(píng)論 3 336
  • 正文 我和宋清朗相戀三年玛痊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片狂打。...
    茶點(diǎn)故事閱讀 39,965評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡擂煞,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出趴乡,到底是詐尸還是另有隱情对省,我是刑警寧澤,帶...
    沈念sama閱讀 35,684評(píng)論 5 347
  • 正文 年R本政府宣布晾捏,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏上真。R本人自食惡果不足惜悦穿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望胖齐。 院中可真熱鬧玻淑,春花似錦、人聲如沸呀伙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)剿另。三九已至箫锤,卻和暖如春贬蛙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背麻汰。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工速客, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人五鲫。 一個(gè)月前我還...
    沈念sama閱讀 48,126評(píng)論 3 370
  • 正文 我出身青樓溺职,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親位喂。 傳聞我的和親對(duì)象是個(gè)殘疾皇子浪耘,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容