jenkins自动化构建保姆级教程(持续更新中)

news2025/1/12 20:42:32

1.安装

1.1版本说明

访问jenkins官网 https://www.jenkins.io/,进入到首页
jenkins官方首页
点击【Download】按钮进入到jenkins下载界面
jenkins下载界面
左侧显示的是最新的长期支持版本,右侧显示的是最新的可测试版本(可能不稳定),建议使用最新的长期支持版本,这里我使用2.401.3

1.2环境说明

使用虚拟机centos7系统,采用docker-compose方式安装

1.3安装必要条件说明

虚拟机通外网、安装好docker、docker-compose、jdk(17)、maven(3.9.3)、git,这些软件的安装请自行安装比较简单,如果不会,请找度娘,软件安装完后建议验证

docker docker version

docker-compose docker-compose -v

jdk java -version

maven mvn -v

git git --version

在虚拟机(centos7)系统的/root的目录下创建jenkins.yml构建文件

version : '3.8'
services:
  jenkins:
    image: jenkins/jenkins:2.401.3-lts
    container_name: jenkins
    restart: always
    user: root
    ports:
      - "8888:8080"
      - "8089:50000"
    environment:
      - m=1024M
      - u=0
      - TZ=Asia/Shanghai
    volumes:
      - /usr/java/jdk17.0.8:/usr/java/jdk17.0.8
      - /usr/java/maven3.9.3:/usr/java/maven3.9.3
      - /usr/libexec/git-core:/usr/libexec/git-core
      - /root/jenkins/home:/var/jenkins_home
      - /etc/localtime:/etc/localtime
      - /root/repo:/root/repo

配置文件说明:
a.必须指定user为root用户,否则启动时会报错提示/var/jenkins_home无访问权限
b.必须指定jdk、maven、git等运行环境宿主机和容器路径的映射关系,安装路径根据自己实际安装的路径修改

1.4 安装并启动

在jenkins.yml所在目录下执行一键启动命令 : docker-compose -f jenkins.yml所在路径 up -d

查看启动情况 : docker logs -f jenkins
在这里插入图片描述
红框中的内容为初始登录的密码,此时可以在浏览器输入:虚拟机ip:8888 进行访问
在这里插入图片描述
输入控制台密码,点击继续按钮软件需要加载一些必须的配置,请耐心等待一会,加载完成后即可进入到插件安装界面,鉴于对软件不熟悉,建议选择【安装推荐的插件】
在这里插入图片描述
点击进入到推荐插件安装界面,耐心等待安装完成
在这里插入图片描述
安装完成插件后自动进入到添加管理员账号界面,建议添加管理员账号,不要使用admin账户
在这里插入图片描述
在这里插入图片描述
点击【保存并完成】按钮,进入到实例配置界面,直接保存并完成即可
在这里插入图片描述
点击开始使用jenkins进入到首页
在这里插入图片描述

2.配置

2.1汉化(建议配置)

manage jenkins ->Plugins->installed plugins 搜索框中输入 local发现汉化插件已经安装,重启jenkins即可
在这里插入图片描述
重启jenkins
在这里插入图片描述
重启完成,再次访问,发现菜单都成中文了,汉化完成
在这里插入图片描述

2.2系统工具配置

主要配置Publish Over SSH,建打包完成的jar发送到指定服务器并执行运行操作
系统管理->系统配置
全局密钥、密码等信息配置
在这里插入图片描述
具体远程服务器信息配置
在这里插入图片描述
配置完成可以点击右下方的【Test Configuration】按钮进行测试,如果提示 “sucess”说明配置成功
在这里插入图片描述

2.3全局工具配置

maven settings.xml配置 、 jdk、maven
a.maven settings.xml配置
在这里插入图片描述
b.jdk配置(可配置多个,至少 配置一个)
在这里插入图片描述
c.git配置(可选,可以不配置使用默认的)
在这里插入图片描述
d.maven配置(可配置多个,至少配置一个)
在这里插入图片描述

3.使用

3.1前端vue项目构建

首页->新建任务
在这里插入图片描述
输入任务名称,可以使用下面的复制功能,复制一个已有的任务
在这里插入图片描述
点击【确定】按钮进入任务的配置界面
在这里插入图片描述
源码配置:源码仓库、访问凭证、构建分支等
在这里插入图片描述
自动化构建配置
在这里插入图片描述
构建环境设置
在这里插入图片描述
构建命令设置
在这里插入图片描述
远程服务器设置
在这里插入图片描述
配置完成后依次点击最下面的【应用】、【保存】按钮跳转到任务的构建界面,点击【立即构建】按钮 开始进行自动构建
在这里插入图片描述
开始构建后点击具体的构建版本(左下角的#1、#2、#3…)查看构建的情况
在这里插入图片描述
当最下面提示sucess后说明构建成功,赶紧试试吧

3.2后端springboot、springcloud项目构建

4.高级应用

4.1jenkins分布式配置以及应用(jenkins主从)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/867284.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码随想录算法学习心得 51 | 503、下一个更大的元素II 42、接雨水...

一、下一个更大元素II 链接:力扣 描述如下:给定一个循环数组 nums ( nums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nums 中每个元素的 下一个更大元素 。 数字 x 的 下一个更大的元素 是按数组遍历顺序&am…

2023年五款免费高效的在线客服系统大揭秘!

近年来,随着移动互联网的蓬勃发展,企业与消费者之间的互动方式正在迅速演变,从传统的PC端转向了更加便捷灵活的移动端。在这个变革的大背景下,为了满足日益增长的客户需求,企业对于提供优质客户服务的迫切需求也逐渐凸…

【雕爷学编程】Arduino动手做(09)---火焰传感器模块4

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&#x…

基于时态差分法的强化学习:Sarsa和Q-learning

时态差分法(Temporal Difference, TD)是一类在强化学习中广泛应用的算法,用于学习价值函数或策略。Sarsa和Q-learning都是基于时态差分法的重要算法,用于解决马尔可夫决策过程(Markov Decision Process, MDP&#xff0…

LoadRunner(2)

一、Controller 1.1场景设计 1.通过VUG打开 施压机器:发起请求的角色(用户本地电脑) 被压机器:处理请求的角色(服务器) 2.直接双击Controller 场景设计:需要关注三个部分 第一部分: 第二部分: 2.1运行场景…

11-数据结构-栈和队列的应用(C语言)

栈和队列的应用 目录 栈和队列的应用 一、括号匹配(栈) 二、表达式的各种转换 (1)中缀转后缀(手工) (2)后缀转中缀表达式(手工) (3)中缀转后缀(栈) (4)中缀转后缀(树) (5)后缀表达式求值 (6)中缀表达式求值(栈…

2023杭电多校第8场J题-Rikka with Square Numbers

题目链接&#xff1a;csoj | J. Rikka with Square Numbers (scnu.edu.cn) 题目解析&#xff1a; 代码如下&#xff1a; #include<iostream> #include<math.h> #include<algorithm> using namespace std;int main() {ios::sync_with_stdio(0);cin.tie(0);c…

如何通过CSS选择器选择一个元素的子元素?如何选择第一个子元素和最后一个子元素?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 选择一个元素的子元素⭐ 选择第一个子元素和最后一个子元素⭐ 注意事项⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&…

【C语言】小游戏-三字棋

大家好&#xff0c;我是深鱼~ 目录 一、游戏介绍 二、文件分装 三、代码实现步骤 1.制作简易游戏菜单 2.初始化棋盘 3.打印棋盘 4.玩家下棋 5.电脑随机下棋 6.判断输赢 7.判断棋盘是否满了 四、完整代码 game.h(相关函数的声明&#xff0c;整个代码要引用的头文件以及宏…

五金仓库的管理数字化

随着信息技术的快速发展&#xff0c;数字化管理在各行各业中迅速普及。数字化管理可以让企业轻松高效地收集、存储和共享数据&#xff0c;并利用大数据分析和人工智能等工具进行精确分析和预测&#xff0c;从而更好地理解业务运作情况并做出相应调整&#xff0c;以提高企业效率…

已有公司将ChatGPT集成到客服中心以增强用户体验

Ozonetel正在利用ChatGPT来改善客户体验。该公司表示&#xff0c;他们通过使用ChatGPT收集与客户互动过程收集的“语料”能够更有针对性地提高服务效率&#xff0c;提供个性化的用户体验&#xff0c;并实现更高的客户满意度。[1] 通过这套解决方案&#xff0c;客服中心将拥有一…

IDEA之Debug调试

资料来源于韩老师视频 &#xff08;一&#xff09;初探debug 1、打断点的话&#xff1a;直接在该行前面单击左键&#xff0c;出现小红点就是断点了。 想要取消断点的话&#xff0c;再单击小红点即可。 运行debug时&#xff0c;右键选择"Debug…"而不是选“Run…”…

sip语音对讲终端怎么样?

sip语音对讲终端怎么样&#xff1f; IP语音对讲终端是一种通过网络进行语音通信的设备&#xff0c;具有以下特点&#xff1a; 1. 便捷性&#xff1a;IP语音对讲终端可以通过互联网实现远程通信&#xff0c;用户可在任何地点与他人进行语音交流&#xff0c;无需受到距离的限制…

MySql011——检索数据:过滤数据(使用正则表达式)

前提&#xff1a;使用《MySql006——检索数据&#xff1a;基础select语句》中创建的products表 一、正则表达式介绍 关于正则表达式的介绍大家可以看我的这一篇博客《Java038——正则表达式》&#xff0c;这里就不再累赘。 二、使用MySQL正则表达式 2.1、基本字符匹配 检索…

18-有假币

题目 居然有假币&#xff01; 现在猪肉涨了&#xff0c;但是农民的工资却不见涨啊&#xff0c;没钱怎么买猪肉啊。nowcoder这就去买猪肉&#xff0c;结果找来的零钱中有假币&#xff01;&#xff01;&#xff01;可惜nowcoder 一不小心把它混进了一堆真币里面去了。只知道假币…

Java项目-苍穹外卖-Day03

员工分页查询功能实现 需求分析和设计 代码开发 先设计类 将对应分页查询的传参类以及结果类进行封装 对应真正返回的为Result<PageResult>Controller /**** param employeePageQueryDTO* return*/GetMapping("/page")ApiOperation("员工分页查询&qu…

【C++】开源:glog日志库配置使用

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍glog日志库配置使用。 无专精则不能成&#xff0c;无涉猎则不能通。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c;下次…

Mac M1 安装Oracle Java 与 IEDA

文章目录 1 官网下载2 安装IDEA参考 1 官网下载 https://www.oracle.com/ 使用finder中的拖拽进行安装即可 2 安装IDEA https://www.jetbrains.com/zh-cn/idea/download/?sectionmac 同样的&#xff0c;下载完后拖拽安装即可 参考 Mac M1 安装Java 开发环境 https://blog.…

Cmder:从此告别记事本记命令的日子

前言 平时开发中遇到这样那样的命令需要记下来&#xff0c;一般做法是这样。 新建记事本将需要记下的关键命令保存。每次需要使用时&#xff0c;粘贴复制即可。 好像没什么毛病&#xff01;直到遇到了 Cmder。。。 当看到同事分析问题时在 Cmder 里命令快捷键刷刷一顿操作&…

体渲染原理及WebGL实现【Volume Rendering】

体渲染&#xff08;Volume Rendering&#xff09;是NeRF神经场辐射AI模型的基础&#xff0c;与传统渲染使用三角形来显示 3D 图形不同&#xff0c;体渲染使用其他方法&#xff0c;例如体积光线投射 (Volume Ray Casting)。本文介绍体渲染的原理并提供Three.js实现代码&#xff…