Jenkins 创建自由风格、Maven类型和流水线类型的任务,进行项目拉取编译自动部署 (1)

一、Jenkins构建的项目类型介绍

Jenkins中自动构建项目的类型有很多,常用的有以下3种:

  • 自由风格软件项目(FreeStyle Project)
  • Maven项目(Maven Project)
  • 流水线项目(Pipeline Project)

每种类型的构建其实都可以完成一样的构建过程与结果,只是在操作方式、灵活度等方面有所区别,在实际开发中可以根据自己的需求和习惯来选择。

PS:个人推荐使用 流水线类型 ,因为灵活度非常高。

二、自由风格项目构建

下面演示创建一个自由风格项目来完成项目的集成过程:

拉取代码->编译->打包->部署

1、创建任务

在这里插入图片描述

2、源码管理(从Git拉取代码)

选择GIT ,输入仓库地址 、选择Credentials (如果没有要先添加)。

在这里插入图片描述

3、构建(包括编译、打包)

菜单选择如下:

添加构建步骤 -> Executor Shell

输入如下内容:

echo "开始编译和打包"
mvn clean package
echo "编译和打包结束"
123

在这里插入图片描述

3.1、测试(非必需测试)

在这里插入图片描述

查看运行日志,如下图所示。
在这里插入图片描述

4、构建后操作(部署)

把项目部署到远程的Tomcat里面。

4.1、检查 Deploy to container 插件

Jenkins 本身无法实现远程部署到Tomcat的功能,需要安装 Deploy to container 插件实现。

(1)检查Deploy to container 插件

检查在增加构建后操作步骤 的选项 中有没有Deploy to container 插件,如果没有,则要先添加 Deploy to container 插件。

在这里插入图片描述

(2)在 Manage Plugins(插件管理)中,搜索 Deploy to container

在这里插入图片描述

(3)安装完成。

在这里插入图片描述

(4)重启。

一定要重启。 访问 http://jenkins地址/restart ,实现重启。

4.2、tomcat配置

(1)tomcat-users.xml 配置用户

apache-tomcat-8.5.56\conf\tomcat-users.xml

<role rolename="manager-gui"/>
<user username="jenkins" password="jenkins123" roles="manager-gui"/>

完整配置如下:

<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="jenkins" password="jenkins123" 
           roles="admin-gui,manager-gui,manager-script,manager-jmx,manager-status"/>

用户名是 jenkins,密码是 jenkins123 ,按需自定义。

检查tomcat 配置情况,登录 http://127.0.0.1:8080 ,如下图所示。
在这里插入图片描述
.png)]

输入用户名和密码
在这里插入图片描述

进入应用管理页面,如上所示。
在这里插入图片描述

(2)context.xml 去掉访问限制

apache-tomcat-8.5.56\webapps\manager\META-INF\context.xml 中注释掉配置

 <!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
 -->

或者,将 allow的值修改为

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1"
修改为 
allow="^.*$"

(3)解决 war包过大无法上传

apache-tomcat-8.5.56/webapps/manager/WEB-INF/web.xml

<multipart-config>
    <!-- 500MB max -->
    <max-file-size>524288000</max-file-size>
    <max-request-size>524288000</max-request-size>
    <file-size-threshold>0</file-size-threshold>
</multipart-config>

(4)访问host-manager报403错误

apache-tomcat-8.5.56/webapps/host-manager/META-INF/context.xml

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1"
修改为 
allow="^.*$"

4.3、构建后操作

1)选择 Deploy war/ear to a container

在这里插入图片描述

WAR/EAR files 的值:

target/*.war

2)Containers (添加tomcat)

选择 tomcat8.x Remote

在这里插入图片描述

Credentials :tomcat 的用户名和密码(如果没有,则先添加)

tomcat URL 如下:

http://192.168.0.110:8080

在这里插入图片描述

5、验证(自由风格任务构建)

5.1、点击"Build Now",开始构建过程

在这里插入图片描述

5.2、构建成功

在这里插入图片描述

5.3、访问项目

这里我们看到项目已经在 tomcat 中运行了,我们点击这个项目

在这里插入图片描述

点击链接,访问项目,如下图。

在这里插入图片描述

或者在 webapps中找到 web_demo-1.0-SNAPSHOT

cd /data/software/apache-tomcat-8.5.69/webapps

在这里插入图片描述

访问 http://192.168.0.110:8080/web_demo-1.0-SNAPSHOT ,成功!

6、持续集成

6.1、修改代码

在这里插入图片描述

6.2 、Push到仓库

在这里插入图片描述

7、验证

7.1、在 Jenkins 点击构建

在这里插入图片描述

7.2、日志显示,已经部署成功

在这里插入图片描述

7.3、访问项目,如下图所示,说明部署成功!

在这里插入图片描述

8、用户凭证

添加全局用户凭证的操作。

(1)菜单链接操作如下:

Manage Credentials --> 全局 --> 添加凭据

在这里插入图片描述

(2)根据需要,选择 Username with password ,输入 tomcat 的账号和密码。

在这里插入图片描述

三、Maven项目构建

1、安装 Maven Integration插件

在这里插入图片描述

安装完成。

在这里插入图片描述

2、构建Maven任务

2.1、创建Maven任务

创建 web_demo_maven

在这里插入图片描述

2.2、源码管理

在这里插入图片描述

拉取代码和远程部署的过程和自由风格项目一样

2.3、Build(构建)

Build(构建)与 自由风格项目 不一样。

如果有子项目的目录,则填入:

子项目名称/pom.xml

Goals and options(目标和选项),填入:

clean package

Build(构建)完整配置如下图所示。

在这里插入图片描述

2.4、构建后操作

在这里插入图片描述

3、验证

3.1、构建项目

在这里插入图片描述

3.2、构建完成

在这里插入图片描述

3.3、访问

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/xiaojin21cen/article/details/125316422