Jenkins环境一站式教程:从安装到配置,打造高效CI/CD流水线环境-Ubuntu 22.04.5 环境离线安装配置 Jenkins 2.479.1
文章目录
- Jenkins环境一站式教程:从安装到配置,打造高效CI/CD流水线环境-Ubuntu 22.04.5 环境离线安装配置 Jenkins 2.479.1
- 一、环境准备
- 1.1 机器规划
- 1.2 环境配置
- 1.2.1 设置主机名
- 1.2.2 停止和禁用防火墙
- 1.2.3 更新系统
- 二、安装配置Jenkins
- 2.1 安装JDK
- 2.1.1 查询JDK可以安装的版本信息
- 2.1.2 指定版本安装OpenJDK
- 2.1.3 查看JDK版本
- 2.2 添加Jenkins存储库
- 2.2.1 导入Jenkins存储库的GPG密钥
- 2.2.2 将Jenkins存储库添加到apt源列表中
- 2.2.3 获取最新的Jenkins软件包信息
- 2.3 安装 Jenkins
- 2.3.1 查询Jenkins可以安装的版本信息
- 2.3.2 指定版本安装Jenkins
- 2.3.3 更改jenkins启动文件
- 2.3.4 重启Jenkins服务
- 2.4 访问Jenkins Web界面
- 三、Jenkins使用
- 3.1 Jenkins的配置
- 3.1.1 安装常用插件
- 3.1.1.1 安装语言管理插件
- 3.1.1.2 安装"Maven Integration"
- 3.1.1.3 安装"NodeJS"插件
- 3.1.1.4 安装 "Publish over SSH" 插件
- 3.1.2 全局工具配置
- 3.1.2.1 配置JDK
- 3.1.2.2 配置Git
- 3.1.2.3 配置Maven
- 3.1.2.4 配置NodeJS
- 3.1.2.5 设置缺省语言
- 3.1.2.6 重启 Jenkins 服务
- 3.2 Jenkins的常用命令
- 3.2.1 查看 Jenkins 服务状态
- 3.2.2 停止 Jenkins 服务
- 3.2.3 启动 Jenkins 服务
- 3.2.4 重启 Jenkins 服务
Jenkins环境一站式教程:从安装到配置,打造高效CI/CD流水线环境-Ubuntu 22.04.5 环境离线安装配置 Jenkins 2.479.1
一、环境准备
1.1 机器规划
操作系统采用Ubuntu 22.04.5的版本,内核版本是5.15.0-125-generic,具体的信息如下:
| 主机名称 | IP | OS版本 | Jenkins版本 |
|---|---|---|---|
| app | 192.168.1.134 | Ubuntu 22.04.5 LTS | Jenkins 2.479.1 |
1.2 环境配置
1.2.1 设置主机名
根据机器的规划,设置主机名为app。
$ sudo hostnamectl set-hostname app && bash
1.2.2 停止和禁用防火墙
$ sudo systemctl disable --now ufw
1.2.3 更新系统
在开始安装Jenkins之前,首先需要确保系统是最新的。打开终端并执行以下命令来更新系统软件包。
$ sudo apt update
$ sudo apt upgrade
这将更新系统上的所有软件包到最新版本。
二、安装配置Jenkins
2.1 安装JDK
Jenkins是基于Java的应用程序,因此在安装Jenkins之前,需要在系统上安装Java Development Kit(JDK)。在Ubuntu 22.04上,可以使用OpenJDK来安装Java。
2.1.1 查询JDK可以安装的版本信息
$ sudo apt list -a | grep openjdk


2.1.2 指定版本安装OpenJDK
执行以下命令来安装OpenJDK 17版本。
$ sudo apt install -y fontconfig openjdk-17-jre


安装过程可能需要一些时间。
2.1.3 查看JDK版本
安装完成后,可以通过以下命令验证Java安装。
$ sudo java -version

该命令将显示已安装的Java版本信息。
2.2 添加Jenkins存储库
Jenkins提供了官方的存储库,可以将其添加到系统中以方便安装和更新。
2.2.1 导入Jenkins存储库的GPG密钥
执行以下命令导入Jenkins存储库的GPG密钥:
$ sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key

2.2.2 将Jenkins存储库添加到apt源列表中
接下来,执行以下命令将Jenkins存储库添加到apt源列表中。
$ echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" \https://pkg.jenkins.io/debian-stable binary/ | sudo tee \/etc/apt/sources.list.d/jenkins.list > /dev/null

2.2.3 获取最新的Jenkins软件包信息
添加存储库后,执行以下命令以使apt获取最新的Jenkins软件包信息:
$ sudo apt update

2.3 安装 Jenkins
现在可以使用apt安装Jenkins了。
2.3.1 查询Jenkins可以安装的版本信息
$ sudo apt list -a | grep jenkins

2.3.2 指定版本安装Jenkins
执行以下命令来安装Jenkins:
$ sudo apt install -y jenkins=2.479.1

安装完成后,Jenkins服务将自动启动。
2.3.3 更改jenkins启动文件
$ sudo vim /lib/systemd/system/jenkins.service

保存退出。
2.3.4 重启Jenkins服务
$ sudo systemctl restart jenkins

2.4 访问Jenkins Web界面
Jenkins安装完成后,可以通过Web浏览器访问其管理界面。打开浏览器并输入以下URL:
http://192.168.1.134:8080

在第一次访问时,您将看到一个页面,提示您输入初始管理员密码。
执行以下命令来获取初始管理员密码:
$ sudo cat /var/lib/jenkins/secrets/initialAdminPassword

该命令将显示初始管理员密码。复制该密码并粘贴到Jenkins Web界面中,然后点击"继续"设置。

接下来,您将被要求选择安装插件的方式。您可以选择安装推荐的插件,也可以选择自定义安装。选择适当的选项并等待插件安装完成。

完成插件安装后,您将被要求创建第一个管理员用户。输入必要的详细信息,并点击"保存并完成"完成设置。




三、Jenkins使用
3.1 Jenkins的配置
安装完成后,您可以根据需要配置Jenkins。登录到Jenkins的管理界面。
3.1.1 安装常用插件
在Jenkins首页进入“Manage Jenkins”

进入 “Plugins”


3.1.1.1 安装语言管理插件

3.1.1.2 安装"Maven Integration"

3.1.1.3 安装"NodeJS"插件

3.1.1.4 安装 “Publish over SSH” 插件

3.1.2 全局工具配置

3.1.2.1 配置JDK


3.1.2.2 配置Git

3.1.2.3 配置Maven

3.1.2.4 配置NodeJS

3.1.2.5 设置缺省语言




配置已经完成!
此外,您还可以安装其他插件、创建和配置构建任务等。
3.1.2.6 重启 Jenkins 服务
$ sudo systemctl restart jenkins

3.2 Jenkins的常用命令
在安装Jenkins后,它将作为系统服务自动启动。您可以使用以下命令来管理Jenkins服务:
3.2.1 查看 Jenkins 服务状态
$ sudo systemctl status jenkins

3.2.2 停止 Jenkins 服务
$ sudo systemctl stop jenkins

3.2.3 启动 Jenkins 服务
$ sudo systemctl start jenkins

3.2.4 重启 Jenkins 服务
$ sudo systemctl restart jenkins

原文链接:https://mp.weixin.qq.com/s/NVMHVkxw_lxE6gXDmX5r_Q
👍 点赞,你的认可是我创作的动力!
⭐️ 收藏,你的青睐是我努力的方向!
✏️ 评论,你的意见是我进步的财富!

相关文章:
Jenkins环境一站式教程:从安装到配置,打造高效CI/CD流水线环境-Ubuntu 22.04.5 环境离线安装配置 Jenkins 2.479.1
文章目录 Jenkins环境一站式教程:从安装到配置,打造高效CI/CD流水线环境-Ubuntu 22.04.5 环境离线安装配置 Jenkins 2.479.1一、环境准备1.1 机器规划1.2 环境配置1.2.1 设置主机名1.2.2 停止和禁用防火墙1.2.3 更新系统 二、安装配置Jenkins2.1 安装JDK…...
【Android】ARouter源码解析
本篇文章主要讲解了 ARouter 框架的源码分析,包括其初始化过程、核心方法等。 初始化 在使用ARouter的时候我们都会先进行初始化: ARouter.init(this);我们看下 init() 源码: public static void init(Application application) {// 检查…...
计算直线的交点数
主要实现思路 整体流程思路: 程序旨在解决给定平面上不同数量的直线(无三线共点),求出每种直线数量下所有可能的交点数量,并按要求格式输出的问题。整体通过初始化一个二维数组来存储不同直线数量与交点数量对应的存在…...
STM32基于HAL库的串口接收中断触发机制和适用场景
1. HAL_UART_Receive_DMA函数 基本功能 作用:启动一个固定长度的 DMA 数据接收。特点: 需要预先指定接收数据的长度(Size 参数)。DMA 会一直工作直到接收到指定数量的数据,接收完成后触发 HAL_UART_RxCpltCallback 回…...
java面试宝典
本文只摘抄部分宝典内容,完整宝典可以在打开下方链接,在网盘获取 ^ _ ^ 链接:java面试宝典 提取码: wxy1 复制这段内容后打开百度网盘手机App,操作更方便哦 链接: java前端面试宝典 提取码: wxy1 复制这段内容后打开百度网盘手机Appÿ…...
Scala—Slice(提取子序列)方法详解
Scala—Slice(提取子序列)方法详解 在 Scala 中,slice 方法用于从集合中提取一个连续的子序列(切片)。可以应用于多种集合类型,如 List、Array、Seq 等。 一、slice 方法的定义 slice 根据提供的起始索引…...
【电子通识】案例:USB Type-C USB 3.0线缆做直通连接器TX/RX反向
【电子通识】案例:连接器接线顺序评估为什么新人总是评估不到位?-CSDN博客这个文章的后续。最近在做一个工装项目,需要用到USB Type-C线缆做连接。 此前已经做好了线序规划,结果新人做成实物后发现有的USB Type-C线缆可用,有的不行。其中发现USB3.0的TX-RX信号与自己的板卡…...
【SKFramework框架核心模块】3-5、函数扩展模块
推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享QQ群:398291828小红书小破站 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 【Unity3D框架】SKFramework框架完全教程《全…...
使用 EasyExcel 提升 Excel 处理效率
目录 前言1. EasyExcel 的优点2. EasyExcel 的功能3. 在项目中使用 EasyExcel3.1 引入依赖3.2 实体类的定义与注解3.3 工具类方法的实现3.4 在 Controller 中使用 4. 总结5. 参考地址 前言 在日常开发中,Excel 文件的处理是不可避免的一项任务,特别是在…...
【提高篇】3.7 GPIO(七,GPIO开发模型 一)
目录 一,开发模型 二,初始化函数 2.1 时钟使能 一,开发模型 通常我们在进行GPIO相关外设的开发时,往往遵循下面4个步骤,如下: 初始化函数 用于进行时钟设置、参数设置、IO设置、中断设置等。读处理函数 用于从外设读取数据。写处理函数 用于从向外设写数据。中断处理…...
Webpack Tree Shaking 技术原理及应用实战,优化代码,精简产物
前言 在前端开发中,优化代码体积和提升应用性能是至关重要的课题。Webpack 提供了多种优化手段来帮助开发者实现这一目标,Tree Shaking 就是其中一种非常重要的优化技术,它通过在编译阶段移除未被使用的代码模块,从而显著减小最终…...
angular19-官方教程学习
周日了解到angular已经更新到19了,想按官方教程学习一遍,工欲善其事必先利其器,先更新工具: 安装新版版本 卸载老的nodejs 20.10.0,安装最新的LTS版本 https://nodejs.org 最新LTS版本已经是22.12.0 C:\Program File…...
RocketMQ集群部署完整指南
前言 本文将详细介绍RocketMQ集群的部署流程,包括环境准备、安装配置、启动运维等各个方面。 一、环境准备 1.1 系统要求 64位操作系统,建议LinuxJDK 1.8及以上版本源码安装需要Maven 3.2.x1.2 下载RocketMQ 可从以下地址获取RocketMQ安装包: Apache官方开源地址: http://r…...
解决mysql 内存持续上涨问题
问题背景: 业务量不大,Mysql 内存持续上涨,虽然不是很明显,但随着时间慢慢增长,1~2个月左右内存达到80%一旦有一些执行缓慢的sql 内存会快速上去增加/修改大表的字段内存会快速上去 常规操作: Mysql 设置…...
Qt 小项目 学生管理信息系统
主要是对数据库的增删查改的操作 登录/注册界面: 主页面: 添加信息: 删除信息: 删除第一行(支持多行删除) 需求分析: 用QT实现一个学生管理信息系统,数据库为MySQL 要求…...
16-01、JVM系列之:内存与垃圾回收篇(一)
JVM系列之:内存与垃圾回收篇(一) ##本篇内容概述: 1、JVM结构 2、类加载子系统 3、运行时数据区之:PC寄存器、Java栈、本地方法栈一、JVM与JAVA体系结构 JAVA虚拟机与JAVA语言并没有必然的联系,它只是与特…...
聊聊系统的弹力设计-服务器性能指标篇(一)
一、什么是弹性机制 弹性,大家可以轻易的联想到橡胶,可伸缩性是弹性机制的一个很重要的特点,但是实际上弹性不等同于可伸缩性 弹性(Elasticity) 通常指的是系统能够自动适应负载的变化,即自动扩展和收缩资…...
MQ:kafka-消费者的三种语义
文章目录 前言(一) 创建topic(二) 生产者(三)消费者1. At-most-once Kafka Consumer2. At-least-once kafka consumer3. 使用subscribe实现Exactly-once4. 使用assign实现Exactly-once 前言 本文主要是以kafka 09的client为例子,详解kafka c…...
中国1km分辨率SSP119情景(SSP119、SSP245 SSP585),模式逐月降水量数据集(2021-2100)
目录 简介 摘要 代码 引用 网址推荐 知识星球 机器学习 干旱监测平台 中国1km分辨率SSP119情景EC-Earth3模式逐月降水量数据集(2021-2100) 简介 该数据集为中国多情景多模式逐月降水量数据,空间分辨率为0.0083333(约1km),时间为2021年1月-2100年…...
21天掌握javaweb-->第8天:前后端分离架构与Axios请求
前后端分离架构概念 前后端分离架构是一种现代Web应用开发模式,其中前端和后端分别独立开发和部署,通过API进行数据交互。这种架构使得前端专注于用户界面和用户体验,而后端则专注于业务逻辑和数据处理。 优势 开发效率高:前后端可以并行开发,减少了开发时间。技术栈灵活…...
从演唱会踩踏到交通拥堵:我们如何用无人机双光人群计数,为城市装上‘智慧之眼’?
无人机双光人群计数:城市安全管理的智能升级之路 当夜幕降临,体育场外数万观众正陆续离场,安保指挥中心的大屏上闪烁着红黄相间的热力图——这不是科幻电影的场景,而是某省会城市在明星演唱会后的真实一幕。通过部署在关键节点的1…...
Sycamore与Leptos、Dioxus对比:如何选择最适合的Rust前端框架
Sycamore与Leptos、Dioxus对比:如何选择最适合的Rust前端框架 【免费下载链接】sycamore A library for creating reactive web apps in Rust and WebAssembly 项目地址: https://gitcode.com/gh_mirrors/sy/sycamore 在Rust前端开发领域,Sycamor…...
淘宝淘金币自动化脚本:每天节省20分钟的终极解决方案
淘宝淘金币自动化脚本:每天节省20分钟的终极解决方案 【免费下载链接】taojinbi 淘宝淘金币自动执行脚本,包含蚂蚁森林收取能量,芭芭农场全任务,解放你的双手 项目地址: https://gitcode.com/gh_mirrors/ta/taojinbi 淘宝淘…...
Windows 11 + Ubuntu 20.04双系统安装避坑指南(附分区方案)
Windows 11与Ubuntu 20.04双系统安装全流程精解 对于想要在现有Windows 11系统上体验Ubuntu的用户来说,双系统安装是最佳选择。这种方式既能保留熟悉的Windows环境,又能探索Linux世界的无限可能。本文将详细解析从准备到安装的完整流程,特别针…...
最强AI剪辑工具盘点:免费直接用,小白秒变剪辑大师!
一、AI视频剪辑新时代:为什么选择这些工具? 2025年的AI视频工具已经不再是简单的滤镜和特效叠加,而是真正能够理解内容、自动完成剪辑全流程的智能助手。根据权威评测,真正优秀的AI剪辑工具应该具备以下特点: 真正免费…...
MySQL数据同步神器Canal实战:从配置到Java客户端开发全流程
MySQL数据同步神器Canal实战:从配置到Java客户端开发全流程 在数据驱动的时代,实时数据同步已成为现代应用架构的核心需求。想象一下电商平台的库存实时更新、金融系统的交易流水同步、物流系统的状态追踪——这些场景都离不开高效可靠的数据同步机制。…...
OpenClaw故障排查指南:GLM-4.7-Flash模型连接常见问题解决
OpenClaw故障排查指南:GLM-4.7-Flash模型连接常见问题解决 1. 为什么需要这份指南 上周我在本地部署GLM-4.7-Flash模型时,连续遭遇了三次连接失败。每次错误提示都像谜语一样——"Connection timeout"、"Invalid response"这些报错…...
手把手教你用KVM在openEuler 22.03 LTS上安装华为FusionCompute 6.5.1 CNA(含VNC避坑指南)
深度实战:在openEuler 22.03 LTS上通过KVM部署FusionCompute CNA全流程解析 当企业需要构建私有云环境时,华为FusionCompute作为成熟的虚拟化平台常被列为首选方案。本文将完整呈现如何在openEuler 22.03 LTS系统中,通过KVM虚拟化技术实现Fus…...
如何用Chanlun-Pro实现量化缠论交易?终极实战指南
如何用Chanlun-Pro实现量化缠论交易?终极实战指南 【免费下载链接】chanlun-pro 基于缠中说禅所讲缠论理论,以便量化分析市场行情的工具 项目地址: https://gitcode.com/gh_mirrors/ch/chanlun-pro Chanlun-Pro是一款基于缠中说禅理论的量化交易工…...
Qt与Visual Studio双剑合璧:海康工业相机SDK二次开发实战指南
1. 开发环境准备:当Qt遇上Visual Studio 第一次接触海康工业相机SDK开发时,我像大多数开发者一样纠结工具链选择。经过多个项目实战验证,Visual StudioQt Creator的组合堪称黄金搭档——前者提供强大的C调试能力,后者带来跨平台的…...
