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 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> CI工具Jenkins之二:搭建一个简单的CI项目 -> 正文阅读

[系统运维]CI工具Jenkins之二:搭建一个简单的CI项目

简介

持续部署的关注点在于项目功能部署至服务器后可以运行,为下一步测试环节 或最终用户正式使用做好准备。
持续集成(Continuous integration)的关注点在于尽早发现项目整体运行问题,尽早解决。
持续交付的关注点在于研发团队的最新代码能够尽快让最终用户体验到。

持续集成的好处:
1:降低风险
2:减少重复过程
3:任何时间、任何地点生成可部署的软件
4:增强项目的可见性
5:建立团队对开发产品的信心

项目部署方式

  • 手动部署
    在这里插入图片描述- 自动部署
    在这里插入图片描述

持续集成搭建

系统结构总述:
	版本控制子系统
		? Git服务器 
		? 项目对应版本库 
		? 版本库中钩子程序
	持续集成子系统
		? JDK
		? Tomcat
		? Maven
		? Jenkins
			? 主体程序
			? SVN插件
			? Maven插件
			? Deploy to Web Container 插件
	应用发布子系统 
		? JDK
		? Tomcat

1、创建虚拟机安装 Linux 系统

2、搭建应用发布子系统

1)安装JDK

详细过程参考文章:Java 官网下载+安装(Linux)

2)安装Tomcat

详细过程参考:Tomcat安装及配置教程(超详细的图文教程)
记录 Tomcat 服务器的账号密码
配置文件位置:/opt/tomcat/conf/tomcat-users.xml

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="tomcat_user" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status" />

3、搭建持续集成子系统

1)安装Maven

详细过程参考:maven安装及配置(详细版)

2)安装Jenkins

详细过程参考文章:Jenkins安装配置

3)配置Jenkins插件:JDK

全局工具配置:JDK
在这里插入图片描述在这里插入图片描述

4)配置Jenkins插件:Maven

全局工具配置:Maven Configuration
配置settings.xml
在这里插入图片描述
全局工具配置:Maven
在这里插入图片描述在这里插入图片描述

5)安装Jenkins插件:Deploy to Web Container

1、安装插件:Deploy to Web Container
在这里插入图片描述

4、搭建版本控制子系统

1)安装Git

详细过程参考文章:代码版本管理工具之Git的使用详解
记录一下版本库的访问账号密码

2)配置Jenkins插件:Git

全局工具配置:Git
在这里插入图片描述在这里插入图片描述

3)创建工程

1、点击“新建任务”
在这里插入图片描述
2、指定工程名称和工程类型
在这里插入图片描述

4)配置项目对应版本库

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里一定要再选一下! 如下:
在这里插入图片描述
配好的效果,如下:
在这里插入图片描述
※注意:此时 Jenkins 的工作区中还没有代码,需要执行一次构建操作之后,Jenkins 才会下载代码。

构建

1、构建配置

1)配置 - 增加构建步骤

在这里插入图片描述在这里插入图片描述

2)配置 - 构建后操作

在这里插入图片描述在这里插入图片描述

3)配置 - Containers

在这里插入图片描述在这里插入图片描述在这里插入图片描述

2、手动构建

在这里插入图片描述
Jenkins 使用天气状况来表示构建成功率。
在这里插入图片描述

3、自动构建:提交代码修改触发自动构建

1)构建触发器配置及原理

在这里插入图片描述

远程触发的基本原理是 Git 服务器给 Jenkins 项目特定的 URL 地址发送请求, 但必须以请求参数的形式携带一个特定值,这个特定值就是这里的“身份验证令牌”。

比如我们这个项目的地址触发地址是:http://192.168.70.131:8080/jenkins/job/ProOne/build
身份验证令牌是:ATGUIGU_TOKEN
那么最终的访问地址就是:
http://192.168.70.131:8080/jenkins/job/ProOne/build?token=ATGUIGU_TOK EN
触发访问地址中 Jenkins 访问地址是根据实际情况改变的,项目名称根据实际情况改变,其他都不变。

2)获取crumb值

在这里插入图片描述在这里插入图片描述
携带 API Token 访问下面地址:
http://admin:090d592c760bf922d554ed4b1abb2137@192.168.70.131:8080/jenkins/crumbIssuer/api/xml
在这里插入图片描述
则触发 Jenkins 远程构建时需要携带的请求消息头就是: Jenkins-Crumb:5dbccaf47a86bf5b675456f58855fe16

3)Linux的curl命令

Linux 的 curl 命令用来发送 HTTP 请求。 -X 参数:指定请求方式
-v 参数:显示响应结果
-u 参数:携带用户名/密码
-H 参数:携带请求消息头信息

在这里插入图片描述

4)版本库子系统 - 配置Git版本库中的钩子程序

钩子程序由post-commit.tmpl复制得到
	? 这里注意不要使用任何扩展名。如果按照我们习惯的使用.sh扩展名则钩 子程序无法正常工作。
	? 记得使用chmod命令设置为可执行权限 

1、把原有内容注释,加入curl命令
在这里插入图片描述

4、测试自动构建

在 Eclipse/IDEA 中提交代码,在页面上查看显示内容变化

问题:下载代码不是最新版的

如果发生 Jenkins 服务器从 SVN 服务器下载代码不是最新版的情况,那么就在 Git
服务器的 URL 地址后面加上@HEAD 强制要求下载最新版。
在这里插入图片描述

问题:代码在GitHub上,必须关闭“放置跨站点请求伪造”

在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-09-07 11:12:00  更:2021-09-07 11:14:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 14:41:20-

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