返回

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上

发布时间:2022-12-13 01:42:07 227
# java# java# centos# 服务器# 服务器

1.Jenkins从编译war包到部署至Tomcat

由于构建的时候是基于Maven、git(GitHub)以及JDK1.8和Tomcat8来的,所以这些我都是和jenkins安装在同一台服务器上(Linux,centos7)

2.插件配置:

全局工具配置,还是点击系统管理–》Global Tool Configuration

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_maven

 

配置jdk,点击新增JDK

把自动安装勾选掉,就会出现让你配置你已经安装的jdk的路径了。

查看Java的安装目录:

which java

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_tomcat_02

 

下拉找到maven,同理配置maven

查看maven的安装目录:

mvn -version

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_Jenkins_03

 

系统管理->管理插件->可选插件->选择安装 Gitlab Hook Plugin和Build Authorization Token Root Plugin插件。 如果没有安装Build Authorization Token,后面gitlab在Test hook时会报403错误,还得安装Maven Integration,publish over SSH,

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_maven_04

 

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_jenkins_05

 

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_Jenkins_06

 

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_jenkins_07

 

进入【系统配置】-【插件管理】-【可选插件】找到如下插件下载安装。

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_tomcat_08

 

该插件是用来将war包发布到服务器上。

3.启动服务器上面的tomcat

4.点击新建–选择构建一个maven项目

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_tomcat_09

 

General:

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_maven_10

 

源码管理:

这里填写相应信息以便于jenkins从gitlab上拉取指定分支代码。

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_maven_11

 

Build:

RootPom: 根据自己的项目的实际路径填写。Goals and options填写运行mvn命令的参数选项:

填写clean package -Dmaven.test.skip=true(清理以前的包,跳过单测打包),也可以根据自己的项目情况写maven命令,我这里需要指定打包环境clean package -P test -Dmaven.test.skip=true

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_tomcat_12

 

配置【构建后操作】,点击【增加构建后操作步骤】选择下图所示插件:

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_Jenkins_13

 

选择之后即可填写发布应用的信息。

配置tomcat之前先确保目标tomcat已经启动

WAR/EAR files: **/target/xx.war 根据自己项目的实际路径填写
Context path: 访问的项目名

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_jenkins_14

如果不选这个,则项目如果不能运行,则不会自动部署到别的服务器上:

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_Jenkins_15

 

到此配置完成!

5.开始构建项目

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_Jenkins_16

Jenkins部署war包到tomcat,报错:

ERROR: Build step failed with exception
org.codehaus.cargo.container.ContainerException: Failed to redeploy [/root/.jenkins/workspace/gene/ideaWorkspaceSingleCell1.0/hessianhealth-admin/target/SingleCell.war]

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_jenkins_17

 

上面报错的意思是,FileNotFoundException找不到对应的manager/text/list文件,查看一下tomcat配置:

tomcat-users.xml文件中没有添加manager-script相关组及用户

原因:tomcat-users.xml没有添加manage-script组和相应的用户;或者Jenkins配置中tomcat的用户名和密码输错。

Tomcat下conf目录中,有一个tomcat-users.xml文件,该文件中默认情况下,是将角色和用户的配置信息注释掉的,所以需要手动修改配置文件。

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_Jenkins_18

 

手动修改配置文件,添加manager-script相关角色以及用户。

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_maven_19

 

配置代码如下:




重启Tomcat服务。
查看Jenkins中Tomcat用户名和密码是否正确:

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_jenkins_20

 

然后重新通过Jenkins构建项目,成功:

Jenkins+maven+gitLab构建项目,及远程部署war包到tomcat上_maven_21

6.访问web

tomcat启动完毕后就可以通过web界面进行访问了

 

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线