IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Jenkins 创建自由风格、Maven类型和流水线类型的任务,进行项目拉取编译自动部署 (1) -> 正文阅读

[Java知识库]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、访问

在这里插入图片描述

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-06-20 22:54:28  更:2022-06-20 22:55:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/31 10:53:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码