jenkins maven Spring Boot git Linux持續(xù)集成環(huán)境搭建教程

? ? ? ? 最近工作需要使用jenkins來持續(xù)部署Spring Boot項(xiàng)目,在網(wǎng)上爬了很多教程,這方面的教程也不是很多辩越,也掉了很多坑。jenkins要安裝起來雖然不難信粮,但也不算太容易黔攒。因此萌發(fā)了寫這篇教程的想法,共享給大家一起進(jìn)步强缘。

下面我們開始教程


Jenkins簡(jiǎn)介

? ? ? ? ? Jenkins是基于Java開發(fā)的一種持續(xù)集成工具督惰,用于監(jiān)控持續(xù)重復(fù)的工作。簡(jiǎn)單點(diǎn)來講就是配置好Jenkins以后可以一鍵發(fā)布項(xiàng)目旅掂,包括從git master分支拉取最新的代碼赏胚,然后打包,然后上傳到遠(yuǎn)程Linux服務(wù)器發(fā)布等一系列步驟它都可以幫你一鍵完成商虐。這無疑可以省去很多程序員重復(fù)性繁瑣的操作觉阅。特別是對(duì)于現(xiàn)在的spring cloud微服務(wù)來說崖疤,一個(gè)項(xiàng)目由多個(gè)小項(xiàng)目組成,每個(gè)小項(xiàng)目都獨(dú)立部署典勇,使用jenkins是最好的部署和管理工具了劫哼。


本教程分為兩部分,第一部分是安裝教程割笙,第二部分是使用教程沦偎。


第一部分:安裝教程

環(huán)境和所需軟件:centos6.5、tomcat8

前提:請(qǐng)確保你的jdk和maven環(huán)境已經(jīng)安裝配置妥當(dāng)咳蔚。

一、下載jenkins.war包搔驼,war包可以去官網(wǎng)下載谈火,隨后我會(huì)附上下載鏈接,可以避免因?yàn)榘姹編淼母鞣N腦殘錯(cuò)誤舌涨。

二糯耍、將jenkins.war包放到tomcat webapp的目錄下,啟動(dòng)tomcat

三囊嘉、瀏覽器訪問jenkins温技。http://192.168.0.101:90/jenkins 。這里我用的是局域網(wǎng)里的Linux扭粱,請(qǐng)注意替換成自己的IP舵鳞,端口號(hào)默認(rèn)是8080,如果沒有修改過tomcat則不用更改琢蛤,我這里是更改過后的端口號(hào)蜓堕。

四、在jenkins中配置jdk和maven


五博其、安裝git plugin插件(用于從git拉取最新的代碼)和publish over ssh插件(用于上傳打包好的項(xiàng)目到遠(yuǎn)程Linux)套才。進(jìn)入系統(tǒng)管理--管理插件--可選插件,在搜索框里面輸入git plugin 和publish over ssh慕淡,然后點(diǎn)擊安裝即可背伴。安裝好以后可以在“已安裝”選項(xiàng)里面看看是否安裝成功。


六峰髓、重啟tomcat來重啟jenkins傻寂,讓上面兩個(gè)插件生效。到此jenkins安裝完畢儿普,下面開始第二部分--使用教程崎逃。


第二部分:使用教程

  其實(shí)使用教程也可以分為兩步,第一步:jenkins從git master分支抓取最新代碼自動(dòng)構(gòu)建打包眉孩;第二步:將打包好的jar包上傳到Linux遠(yuǎn)程端个绍,關(guān)閉正在運(yùn)行的項(xiàng)目勒葱,然后運(yùn)行新的jar項(xiàng)目。

第一步:

一巴柿、打開jenkins首頁凛虽,點(diǎn)擊新建項(xiàng)目


二、輸入Item名稱广恢,選擇maven項(xiàng)目凯旋,點(diǎn)擊ok


三、配置git钉迷。配置后jenkins可自動(dòng)從指定的git抓取master分支上最新的代碼


四至非、點(diǎn)擊add,配置git用戶名和密碼


五糠聪、如果出現(xiàn)下圖錯(cuò)誤荒椭,則證明本機(jī)沒有配置git ssh key


解決上述ssh key問題舰蟆,可參考以下教程鏈接

http://www.linuxidc.com/Linux/2014-10/108080.htm

六趣惠、點(diǎn)擊保存,至此已經(jīng)可以實(shí)現(xiàn)jenkins從git抓取最新的master分支代碼??身害。點(diǎn)擊立即構(gòu)建味悄。

  點(diǎn)擊consoleoutput可看控制臺(tái)輸出信息。如果在這步還報(bào)下圖錯(cuò)誤塌鸯,這是因?yàn)樵趉now_hosts中沒有訪問git機(jī)器的記錄侍瑟。


解決辦法:在Linux下git clone訪問一次git 所在的機(jī)器的項(xiàng)目,如下圖界赔。如果你沒有出現(xiàn)這個(gè)錯(cuò)誤丢习,請(qǐng)忽略。


再次啟動(dòng)淮悼,點(diǎn)擊console output可看到成功啟動(dòng)的信息咐低。


八、至此已完成本教程的第二部分的第一步曲袜腥,jenkins從git抓取最新項(xiàng)目然后自動(dòng)構(gòu)建打包的過程见擦。從控制臺(tái)信息中可看出jenkins已經(jīng)將打好的jar包放在了/root/.jenkins/workspace/..工作空間中。如果你看到了這個(gè)圖羹令,證明前面的配置都是正確的鲤屡,可以接著往下走。


第二步:

一福侈、打開jenkins首頁酒来,點(diǎn)擊系統(tǒng)管理--系統(tǒng)設(shè)置,下拉找到找到publish over ssh,進(jìn)行以下設(shè)置(請(qǐng)確保前面的步驟中publish over ssh插件已經(jīng)安裝成功肪凛,如果沒有發(fā)現(xiàn)堰汉,那就是還沒有安裝成功辽社,請(qǐng)返回去安裝)。


細(xì)心的童鞋可能在這里可能會(huì)發(fā)現(xiàn)服務(wù)器的IP與jenkins安裝的IP是一樣的翘鸭,也就是說都是都在同一臺(tái)機(jī)器上滴铅,都是192.168.0.101,這是因?yàn)閯偤弥挥羞@臺(tái)Linux機(jī)器比較方便使用就乓,所以就只用這一臺(tái)機(jī)器做實(shí)驗(yàn)了汉匙。實(shí)際上jenkins安裝在Windows上或者Linux上,然后項(xiàng)目部署到另外一臺(tái)Linux生蚁,這樣都是可以的噩翠,也推薦這么干,只要這里的IP換成部署項(xiàng)目的機(jī)器IP就可以了

二邦投、進(jìn)入上面的已經(jīng)創(chuàng)建好的jenkinsWeb項(xiàng)目绎秒,點(diǎn)擊配置,下拉找到Post Steps進(jìn)行配置尼摹。

1、點(diǎn)擊

如果沒找到這項(xiàng)剂娄,證明publish over ssh沒有安裝成功蠢涝。

2、接著進(jìn)行下圖配置


參數(shù)說明:

Transfer SetSource files:表示要上傳的本地的jar包及路徑阅懦,可到工作空間去看和二。

Remove prefix:表示要上傳時(shí)要去除的文件夾,即只上傳jar包耳胎。

remote driectory:即表示執(zhí)行時(shí)的路徑惯吕,相當(dāng)于把jar包上傳到這里了。

exec commad:要執(zhí)行的命令腳本怕午。

腳本內(nèi)容:


將此腳本放于上面的Exec?commad路徑中废登。

大概說一下這個(gè)腳本的意思,大牛請(qǐng)忽略這段吧郁惜。先找到正在運(yùn)行的jenkins這個(gè)項(xiàng)目的ID堡距,然后kill掉這個(gè)進(jìn)程,就可以停掉這個(gè)項(xiàng)目了兆蕉。假如你用的不是springboot項(xiàng)目羽戒,則靈活應(yīng)變,例如tomcat發(fā)布的項(xiàng)目可以到tomcat的bin目錄下運(yùn)行shutdown.sh就可以了虎韵。然后打開root目錄易稠,將jenkins上傳好的jar包復(fù)制到相應(yīng)的目錄,然后執(zhí)行bootstrap.sh腳本包蓝,我這里的bootstrap.sh腳本是用來啟動(dòng)springboot項(xiàng)目驶社,下面也貼上代碼企量,供大家參考。假如是tomcat衬吆,同理到tomcat目錄bin目錄下執(zhí)行啟動(dòng)腳本即可梁钾。


這里請(qǐng)務(wù)必注意第一行,必須制定JAVA_HOME的位置逊抡,否則jenkins會(huì)報(bào)找不到j(luò)re的錯(cuò)誤姆泻。

三、至此冒嫡,第二步已經(jīng)配置完畢拇勃,點(diǎn)擊保存。點(diǎn)擊立即構(gòu)建孝凌,點(diǎn)擊consoleoutput方咆,就可以看到成功上傳jar包到遠(yuǎn)程Linux并且成功發(fā)布項(xiàng)目的信息了。


至此已完成所有jenkins配置蟀架。瀏覽器訪問剛才發(fā)布的項(xiàng)目


項(xiàng)目代碼修改后瓣赂,只需將代碼提交到git master分支,然后登陸jenkins點(diǎn)擊立即構(gòu)建片拍,則可以輕松的進(jìn)行項(xiàng)目部署煌集。Jenkins亦可進(jìn)行定時(shí)構(gòu)建部署,當(dāng)然也可設(shè)置當(dāng)master代碼有更新時(shí)自動(dòng)拉取代碼進(jìn)行構(gòu)建部署捌省,這里就不繼續(xù)說了苫纤。

jenkins下載鏈接:http://pan.baidu.com/s/1jIx3FcM

教程到此結(jié)束,歡迎留言討論纲缓。歡迎轉(zhuǎn)載卷拘,轉(zhuǎn)載請(qǐng)務(wù)必注明出處。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末祝高,一起剝皮案震驚了整個(gè)濱河市栗弟,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌工闺,老刑警劉巖横腿,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異斤寂,居然都是意外死亡耿焊,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門遍搞,熙熙樓的掌柜王于貴愁眉苦臉地迎上來罗侯,“玉大人,你說我怎么就攤上這事溪猿」辰埽” “怎么了纫塌?”我有些...
    開封第一講書人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)讲弄。 經(jīng)常有香客問我措左,道長(zhǎng),這世上最難降的妖魔是什么避除? 我笑而不...
    開封第一講書人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任怎披,我火速辦了婚禮,結(jié)果婚禮上瓶摆,老公的妹妹穿的比我還像新娘凉逛。我一直安慰自己,他們只是感情好群井,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開白布状飞。 她就那樣靜靜地躺著,像睡著了一般书斜。 火紅的嫁衣襯著肌膚如雪诬辈。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,185評(píng)論 1 284
  • 那天荐吉,我揣著相機(jī)與錄音自晰,去河邊找鬼。 笑死稍坯,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的搓劫。 我是一名探鬼主播瞧哟,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼枪向!你這毒婦竟也來了勤揩?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤秘蛔,失蹤者是張志新(化名)和其女友劉穎陨亡,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體深员,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡负蠕,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了倦畅。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片遮糖。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖叠赐,靈堂內(nèi)的尸體忽然破棺而出欲账,到底是詐尸還是另有隱情屡江,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布赛不,位于F島的核電站惩嘉,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏踢故。R本人自食惡果不足惜文黎,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望畴椰。 院中可真熱鬧臊诊,春花似錦、人聲如沸斜脂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽帚戳。三九已至玷或,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間片任,已是汗流浹背偏友。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留对供,地道東北人位他。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像产场,于是被迫代替她去往敵國(guó)和親鹅髓。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344

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