Jenkins极简体验

news2025/3/15 15:56:16

做研发运营一体化(或者说运维)的人员,对Jenkins一定不陌生。

这个工具在CI/CD链条中充当了大内总管的角色

很多时候,我们喜欢用抽象的概念描述一个东西。本来简简单单的一个工具或者一个软件甚至一个系统,往往被冠以各种不知所云的修饰,导致最终每个字都认识了,但是看完不知道说了些啥。比如,说什么高可用、高可靠、高安全、高并发、高吞吐、高性能、高扩展,说什么弹性、编排、赋能、治理、熔断等等。也许本意是想避免口语化的描述,把功能说的更加概括,更加严谨,更加通用,也可能仅仅是想把稀松平常的东西说的高大上。这个现象不单单在计算机领域存在,其他领域就更加普遍了。而且还有一个怪现象就是,不了解的人,一开始摸虽不着头脑,学的吃力,但等到掌握了,给别人描述时,却不按自己理解的话表达,而是继续照搬抽象概念,这可就奇怪了。也因此,催生了一个词,叫“说人话”。

产生这种现象的原因,我认为分两种情况:一种是类似法律、专利等行业,需要的是就是严谨、通用。我一个概念可能表示了很多实际的东西,没法用一个具体的东西来代表。一种是要求不太那么严格的行业,那包装的味道就会大一些。但无论哪种情况,对于初学者,就比较麻烦。你总结提炼的时候,脑海里是有具象的东西辅助的,我学习的时候,是需要填充这个具体的东西的,否则读来就会感觉空、感觉虚,感觉飘,感觉迷,感觉茫。但是矛盾啊,这才要学呢。所以这其中一个比较好的过渡方法就是,给初学者一个具体的东西,能够带入概念中,替换抽象的表达,现有一个实际的可感知的东西,便于入门掌握。

因此,这里首先大白话告诉你Jenkins是什么东西。这个东西有点类似于菜单,要炒一盘菜,先准备什么,后做什么,按菜单一条一条来。在计算机运维中,Jenkins提供了一个流水线,你可以告诉它,当我们的代码提交后,它从哪里把代码下载下来或者更新,也告诉它,怎么将代码进行编译,还告诉它如何进行模块测试,如何进行集成,如何进行打包,如何将安装包安装到测试或者目标系统,如何进行系统测试,如何…。说白了,这些之前大部分手动进行的操作,现在可以通过工具自动进行了。提高了效率不说,也避免了人工操作可能遗忘某些环节带来的隐患,最终是节省了成本。抽象起来,就是生产工具的改进促进了生产力的提升。

从上面的描述,你可以看出,这些事情其实完全可以脚本自动化进行,即便没有这个工具。我觉得也是。况且工具里也是依赖脚本来执行许多具体操作的。不过,既然其流行了,就有存在的道理。好用算不算一个?我们不能因为汇编能搞定问题就否定了高级语言存在的意义。

博主不做运维,但是本着学习的态度,也是了解了一下这个工具。下面做个简单记录,万一后面要用呢,也说不定。

1 先上官网下载war包。

2 准备java运行环境,当前下载版本要求11 和 17

3 继续,因为速度原因,从清华或者华为镜像下载jdk,解压,设置环境变量

4 使用java启动Jenkins,就是用java执行上面下载的war包

5 运行成功后,就可以通过web登录了。(首次登陆并不需要用户名和密码)

6 之后就是一大堆插件的安装。但是由于国内的原因,很多都是下载不了或者速度太慢

7 按网上资料,修改updates目录(root目录下的.jenkins下)下的default.json配置文件,主要是替换updates更新源,另外将google也替换了,国内无法连接

8 更新插件

9 这里直接使用web登录Jenkins创建item。主要是执行一下shell,做一个简单验证。

10 其他配置及高级的拉取代码、编译、打包、发布、测试等,后续再研究

暂时就整理这么多。

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

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

相关文章

【Vue】day01-Vue基础入门

目录 day01 一、为什么要学习Vue 二、什么是Vue 1.什么是构建用户界面 2.什么是渐进式 Vue的两种开发方式: 3.什么是框架 总结:什么是Vue? 三、创建Vue实例 四、插值表达式 {{}} 1.作用:利用表达式进行插值&#xff0c…

python接口自动化(三十九)- logger 日志 - 上(超详解)

简介 Python的logging模块提供了通用的日志系统,可以方便第三方模块或者是应用使用。这个模块提供不同的日志级别,并可以采用不同的方式记录日志,比如文件,HTTP GET/POST,SMTP,Socket等,甚至可以…

给自己工作的箴言

箴言 目录概述需求: 设计思路实现思路分析工作箴言 性能参数测试: Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive.…

QT程序运行时依赖设置

本文主要解决Qt程序运行时容易遇到的两个问题: 找不到相关的Qt6Core.dll、Qt6Widgets.dll等库 这种情况下,把相关DLL所在目录添加到系统的环境变量 PATH 中,就可以了。 无法导入Qt相关的插件: qt.qpa.plugin: Could not find th…

高效的实时聊天利器:揭秘三个绝佳的网站聊天插件

实时聊天是连接用户与网站之间的纽带。传统的聊天方式已经逐渐不够满足用户的需求,如果不能快速跟用户交流以及快速解决用户问题,用户就容易跑掉,而网站聊天插件正好是实现实时聊天的必备工具。许多电子商务平台和网站都需要在聊天插件加持下…

[USACO06DEC] Milk Patterns G

目录 1.题目 2.思路 1.字典树(trie 树) 2.hash(正解) 1.有注释版 2. copy 版 3.后文 1.题目 Farmer John has noticed that the quality of milk given by his cows varies from day to day. On further investigation, he discovered that although he cant predict t…

【洛谷】P2004 领地选择(二维前缀和)

二维前缀和模板啦&#xff0c;家人们&#xff0c;一眼出 pos:&#xff08;up自己犯的错误&#xff0c;记录一下&#xff0c;也提醒大家&#xff09; x1<n-c1(1哦) y1<m-c1 x2x1c-1(-1哦) y2y1c-1 okk,上&#xff01; ACcode: #include<bits/stdc.h> using na…

C/C++封装:Windows/Linux下封装.lib/.so文件

C/C TCP/IP通信函数 这里提供了两个C/C中服务器与客户端之间通讯的两个程序&#xff0c;程序中封装了通信之间的函数方法&#xff0c;我们以这个程序为例进行封装。 文件目录结构按照C/C标准开源项目进行存放&#xff1a; ├─bin ├─doc ├─lib └─src├─xsocket│ │ …

influxdb 新增数据失败原因解析

前几天本地装了一个influxdb时序数据库&#xff0c;但是通过java新增数据一直失败&#xff0c;奇怪的是measurement和tag都能顺利添加&#xff0c;但是field一直没值。 最开始以为是用户权限&#xff0c;结果发现并不是。 最终原因&#xff1a;influxdb只能往默认的保留策略里…

中国人民大学与加拿大女王大学金融硕士——在职读研为自己而战,为未来而战

还记得去年大街小巷上广为流传的一首歌吗&#xff0c;“去吗 去啊 以最卑微的梦&#xff0c;战吗 战啊 以最孤高的梦&#xff0c;致那黑夜中的呜咽与怒吼&#xff0c;谁说站在光里的才算英雄”。这首歌表达了卑微的生活和梦想并不能击垮每个平凡的奋斗者。我们都有一个大梦想&a…

windbg 双机调试环境搭建(虚拟机)

windbg 双机调试环境搭建&#xff08;虚拟机&#xff09; WinDbg 下载安装下载安装 虚拟机下载安装下载安装虚拟机软件 VMware下载 Windows 镜像&#xff0c;新建虚拟机 WinDbg 建立连接使用演示参考资料 WinDbg 是一个调试器&#xff0c;可用于分析故障转储、调试实时用户模式…

提高驾驶安全性 | 基于ACM32 MCU的胎压监测仪方案

概述 作为车辆的基础部件&#xff0c;轮胎是影响行车安全不可忽视的因素之一。据统计&#xff0c;中国每年由胎压问题引起轮胎爆炸的交通事故约占 30%&#xff0c;其中 50%的高速交通事故是由车辆胎压异常引起。因此&#xff0c;准确实时地监测车辆在行驶过程中的轮胎压监测系…

HarmonyOS/OpenHarmony应用开发-程序包多HAP机制(下)

三、多HAP的开发调试与发布部署流程 &#xff08;一&#xff09;多HAP的开发调试与发布部署流程如下图所示。 图1 多HAP的开发调试与发布部署流程 &#xff08;二&#xff09;开发 开发者通过DevEco Studio工具按照业务的需要创建多个Module&#xff0c;在相应的Module中完成…

【Unity 实用插件篇】 | 使用Fungus插件制作一个对话系统,简单好学易上手

前言 【Unity 实用插件篇】| 使用Fungus插件制作一个对话系统&#xff0c;简单好学易上手一、Fungus介绍二、Fumgus导入三、Fungus功能使用3.1 基础对话效果实现3.2 搭建简单场景测试3.3 触碰 对话3.4 条件对话3.4 分支 对话3.5 改变对话UI视图 四、常用功能菜单介绍4.1 Flowch…

【前端】自制密码展示隐藏按钮

效果 一、前期准备 使用的图片是iconfront上拿的svg代码环境是Vue2 Element 二、创建组件 showPasswordAndclose <template><span class"show-password-container"><span v-if"chooseType CLOSE" click"changeType"><…

一文读懂Nacos原理及实践

文章目录 0. 前言0.nacos 介绍什么是 Nacos&#xff1f;Nacos 地图 1. 原理解析1.1 服务注册与发现流程一、服务注册流程二、服务发现流程三、注册中心高可用性机制 1.2. 原理解析一、服务注册与发现的概念二、服务注册与发现的流程2. 服务发现流程3. 服务负载均衡流程 三、服务…

javascript 将json数据导出excel

<el-button type"primary" plain v-on:click"jsonToExcel();">导出</el-button>jsonToExcel() {const data this.AlarmData;let head "城市,站点,时间,A相电流(A),B相电流(A),C相电流(A),SO2压力(MPa),CO压力(MPa),NOX压力(MPa),A相电压…

Activity引擎(初次学习与总结梳理全记录,包括易混淆知识点分析,常用报错解决方案等)

最近工作需要使用Acticity框架处理审批业务&#xff0c;简单了解后能虽能很快的上手&#xff0c;但是对于Activity的整体认识并不够&#xff0c;特此花费很多精力全面的学习并记录。包含对很多的概念的第一次理解过程&#xff1b;对知识点的混淆地方的梳理&#xff1b;对实践过…

mysql索引优化和锁

mysql索引优化和锁 IO操作与索引 IO操作上数据库性能的瓶颈之一&#xff0c;每次进行IO操作都需要消耗时间和资源。 核心:尽量减少 IO 操作的次数 读取次数少且读取量少是优化IO操作的核心目标。采用分块读取和局部性原理。 分块读取&#xff1a;将磁盘上的数据划分为若干…

黑马程序员编著过哪些教材?

黑马程序员是一家知名的IT培训机构&#xff0c;他们发布了许多教材和课程。 《Python入门教程》&#xff1a;介绍Python编程语言的基础知识和常用技巧。 《Java从入门到精通》&#xff1a;全面介绍Java编程语言的基础知识和高级特性。 《Web前端开发教程》&#xff1a;涵盖HT…