Jenkins+Maven+Gitlab+Tomcat 自动化构建打包、部署
一、環(huán)境需求
本帖針對(duì)的是Linux環(huán)境,Windows或其他系統(tǒng)也可借鑒。具體只講述Jenkins配置以及整個(gè)流程的實(shí)現(xiàn)。
- ?1.JDK(或JRE)及Java環(huán)境變量配置,我用的是JDK1.8.0_144,網(wǎng)上帖子也很多,不贅述。
- ?2.Jenkins 持續(xù)集成和持續(xù)交付項(xiàng)目。
- ?3.現(xiàn)有項(xiàng)目及gitlab(SVN或本地路徑也行)地址。
- ?4.maven工具及環(huán)境變量配置,用于構(gòu)建和管理任何基于Java的項(xiàng)目。
- ?5.下載解壓Tomcat,我用的是Tomcat8。
?
二、環(huán)境準(zhǔn)備
1、安裝服務(wù)
(1)安裝JDK、Jenkins和gitlab
JDK yum安裝和編譯安裝都可以;
Jenkins 安裝詳見我之前的博客:Jenkins持續(xù)集成01—Jenkins服務(wù)搭建和部署;
gitlab 安裝詳見我之前的博客:gitlab服務(wù)搭建和部署;
tomcat?安裝詳見我之前的博客:tomcat企業(yè)級(jí)Web應(yīng)用服務(wù)器配置與會(huì)話保持。
?
(2)mave安裝
在http://mirrors.cnnic.cn/apache/maven 選擇自己需要的maven版本,博主下載的是maven-3.5.4版本
$ wget https://mirrors.cnnic.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
$ tar -zxvf?apache-maven-3.5.4-bin.tar.gz
?
2、配置環(huán)境變量
(1)配置全局環(huán)境變量
$ vim /etc/profile.d/jenkins_tools.sh
#JDK export JAVA_HOME=/usr/java/jdk1.8.0_144 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH export TIME_STYLE='+%Y/%m/%d %H:%M:%S'#maven export MAVEN_HOME=/data/jenkins_tools/maven-3.5.4 export PATH=${MAVEN_HOME}/bin:$PATH?使環(huán)境變量生效
$ source /etc/profile.d/jenkins_tools.sh
?
(2)測(cè)試
$ java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
?
$ mvn -version
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: /data/jenkins_tools/maven-3.5.4
Java version: 1.8.0_144, vendor: Oracle Corporation, runtime: /usr/java/jdk1.8.0_144/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-514.26.2.el7.x86_64", arch: "amd64", family: "unix"
?
三、Jenkins工具、環(huán)境、插件配置
1、全局工具配置
系統(tǒng)管理--->全局工具配置
修改maven默認(rèn)settings.xml文件,配置git、jdk、maven工具后保存(不要勾選自動(dòng)安裝)。
?
2、配置全局變量
系統(tǒng)管理--->系統(tǒng)設(shè)置--->全局屬性
3、安裝2個(gè)插件
系統(tǒng)管理--->插件管理
(1)Maven Integration plugin 安裝此插件才能構(gòu)建maven項(xiàng)目
?
(2)Deploy to container Plugin 安裝此插件,才能將打好的包部署到tomcat上
?
四、創(chuàng)建一個(gè)Maven工程
1、構(gòu)建maven項(xiàng)目
?
2、源碼管理
填寫git地址信息,添加認(rèn)證憑據(jù),詳見Jenkins持續(xù)集成01—Jenkins服務(wù)搭建和部署
?
3、構(gòu)建觸發(fā)器,可以根據(jù)自己的業(yè)務(wù)需求定制
① Build whenever a SNAPSHOT dependency is built:檢測(cè)到gitlab項(xiàng)目代碼被重新構(gòu)建后就觸發(fā);
② 輪詢 SCM:*/2 * * * * ,每隔2分鐘檢查一次
?
4、打包前步驟,根據(jù)自己需求可以添加一些操作:如一些shell命令
?
5、build打包構(gòu)建
① Root POM:指定pom.xml的文件路徑(這里是相對(duì)路徑)
② Goals and options:mvn的選項(xiàng),構(gòu)件參數(shù)
?
6、構(gòu)建后操作
(1)選擇deploy war to a container,部署到tomcat
?
(2)配置tomcat信息
- ?WAR/EAR files:輸入war包的相對(duì)路徑,如我的war包在新建目錄的target下
- ?context path:輸入部署tomcat的名稱,就部署在webapps下的目錄名
- ?add container:增加容器,一般選tomcat 8X就可以。這里的username與password需要到tomcat的conf文件夾中的tomcat-users.xml修改。tomcat URL就是你希望把war包部署到的tomcat所在IP地址,最后面不需要再加斜杠/。
- ?tomcat-users.xml中的用戶名及密碼默認(rèn)是注釋掉的,所以需要修改,也可以直接復(fù)制以下代碼到</tomcat-users>之前。
- ?然后到tomcat下面webapps/manager/META-INF/context.xml 注銷掉紅色部分。因?yàn)槟J(rèn)tomcat不可以通過外部ip訪問管理界面。一定要啟動(dòng)Tomcat,不然等構(gòu)建等時(shí)候會(huì)報(bào)拒絕連接
?
(3)添加tomcat的憑據(jù)
?
7、配置郵件通知
增加構(gòu)建后操作--->Editable Email Notification
使用郵件同事前,需要再系統(tǒng)配置中進(jìn)行郵箱配置,詳解Jenkins持續(xù)集成01—Jenkins服務(wù)搭建和部署
(1)配置郵件信息
?
(2)設(shè)置郵件觸發(fā)器triggers
默認(rèn)觸發(fā)器:Failure - Any 無論何時(shí)失敗觸發(fā);加一個(gè)success作為測(cè)試;
修改收件人為:recipient list
到這里就配置完成了,點(diǎn)擊構(gòu)建從控制臺(tái)查看輸出信息即可
?
五、構(gòu)建項(xiàng)目
1、立即構(gòu)建
?
2、查看控制臺(tái)輸出
點(diǎn)擊#1--->控制臺(tái)輸出;就能看到執(zhí)行的整個(gè)過程
?
3、驗(yàn)證項(xiàng)目是否構(gòu)建成功
(1)成功向上藍(lán)色;失敗即為紅色
(2)在tomcat上查看項(xiàng)目
(3)收到項(xiàng)目構(gòu)建成功的郵件
?
轉(zhuǎn)載于:https://www.cnblogs.com/along21/p/10172855.html
總結(jié)
以上是生活随笔為你收集整理的Jenkins+Maven+Gitlab+Tomcat 自动化构建打包、部署的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 根据location地址,在导航栏高亮显
- 下一篇: 博客园如何使用MarkDown