8

Jenkins部署Java应用到Tomcat服务器

 1 year ago
source link: https://blog.51cto.com/u_15796303/6003980
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

对于Java程序,Jenkins需要使用构建工具,如maven、ant等,其中maven比较流行。这里就用maven实现Java应用的部署。

1 GitLab准备Java代码

Jenkins部署Java应用到Tomcat服务器_Jenkins
Jenkins部署Java应用到Tomcat服务器_maven_02

2 部署Tomcat并配置

apt-get -y install tomcat9 tomcat9-admin
cp -r /usr/share/tomcat9-admin/* /var/lib/tomcat9/webapps/

      打开/var/lib/tomcat9/conf/tomcat-users.xml,做如下配置:

#添加下面三行,创建用户并授权。manager-script为远程脚本执行权限
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script"/>

      打开/var/lib/tomcat9/webapps/manager/META-INF/context.xml,做如下配置:

#注释下面行。默认只能127.0.0.1本机访问,注释掉后就能远程访问
<!--
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->

      之后重启tomcat9

3 安装maven和tomcat插件

      Maven插件可以实现maven风格的任务

Jenkins部署Java应用到Tomcat服务器_tomcat_03

      Deploy to container插件实现连接tomcat

Jenkins部署Java应用到Tomcat服务器_Jenkins_04

4 Jenkins服务器安装maven和配置镜像加速

apt-get -y install maven

      打开/etc/maven/settings.xml文件,做如下配置:

#在<mirrors>…</mirrors>之间添加如下内容
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

      查看相关变量值

Jenkins部署Java应用到Tomcat服务器_tomcat_05

5 Jenkins全局工具配置jdk和maven

Jenkins部署Java应用到Tomcat服务器_maven_06
Jenkins部署Java应用到Tomcat服务器_maven_07
Jenkins部署Java应用到Tomcat服务器_maven_08

6 创建tomcat的全局凭据

      根据tomcat的用户权限配置,创建jenkins连接tomcat的用户和权限

Jenkins部署Java应用到Tomcat服务器_Jenkins_09

7 创建任务

Jenkins部署Java应用到Tomcat服务器_tomcat_10
Jenkins部署Java应用到Tomcat服务器_tomcat_11

      输入maven的编译选项clean package -Dmaven.test.skip=true

Jenkins部署Java应用到Tomcat服务器_Jenkins_12
Jenkins部署Java应用到Tomcat服务器_Jenkins_13
Jenkins部署Java应用到Tomcat服务器_Jenkins_14

8 构建验证

Jenkins部署Java应用到Tomcat服务器_Jenkins_15

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK