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,具体的信息如下:

主机名称IPOS版本Jenkins版本
app192.168.1.134Ubuntu 22.04.5 LTSJenkins 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

image-20241125224207431

2.1.2 指定版本安装OpenJDK

执行以下命令来安装OpenJDK 17版本。

$ sudo apt install -y fontconfig openjdk-17-jre

image-20241125224426325

image-20241125224455252

安装过程可能需要一些时间。

2.1.3 查看JDK版本

安装完成后,可以通过以下命令验证Java安装。

$ sudo java -version

image-20241125224524940

该命令将显示已安装的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

image-20241125224551513

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

image-20241125224612842

2.2.3 获取最新的Jenkins软件包信息

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

$ sudo apt update

image-20241125224648832

2.3 安装 Jenkins

现在可以使用apt安装Jenkins了。

2.3.1 查询Jenkins可以安装的版本信息
$ sudo apt list -a | grep jenkins

image-20241125224728231

2.3.2 指定版本安装Jenkins

执行以下命令来安装Jenkins:

$ sudo apt install -y jenkins=2.479.1

image-20241125224852763

安装完成后,Jenkins服务将自动启动。

2.3.3 更改jenkins启动文件
$ sudo vim /lib/systemd/system/jenkins.service

image-20241126182740616

保存退出。

2.3.4 重启Jenkins服务
$ sudo systemctl restart jenkins

image-20241124173547589

2.4 访问Jenkins Web界面

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

http://192.168.1.134:8080

image-20241124164128800

在第一次访问时,您将看到一个页面,提示您输入初始管理员密码。

执行以下命令来获取初始管理员密码:

$ sudo cat /var/lib/jenkins/secrets/initialAdminPassword

image-20241124164436215

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

image-20241124164353683

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

image-20241124164639458

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

image-20241125225812761

image-20241125073055201

image-20241124165630104

image-20241124165701935

三、Jenkins使用

3.1 Jenkins的配置

安装完成后,您可以根据需要配置Jenkins。登录到Jenkins的管理界面。

3.1.1 安装常用插件

在Jenkins首页进入“Manage Jenkins”

image-20241125230034833

进入 “Plugins”

image-20241125230111171

image-20241125075726434

3.1.1.1 安装语言管理插件

image-20241125075416997

3.1.1.2 安装"Maven Integration"

image-20241125075848665

3.1.1.3 安装"NodeJS"插件

image-20241125080115989

3.1.1.4 安装 “Publish over SSH” 插件

image-20241125080420461

3.1.2 全局工具配置

image-20241125230532723

3.1.2.1 配置JDK

image-20241125095225062

image-20241125100656783

3.1.2.2 配置Git

image-20241125112853972

3.1.2.3 配置Maven

image-20241125113135713

3.1.2.4 配置NodeJS

image-20241125113353724

3.1.2.5 设置缺省语言

image-20241125232040719

image-20241125232117918

image-20241125232138093

image-20241125232206539

配置已经完成!

此外,您还可以安装其他插件、创建和配置构建任务等。

3.1.2.6 重启 Jenkins 服务
$ sudo systemctl restart jenkins

image-20241124173547589

3.2 Jenkins的常用命令

在安装Jenkins后,它将作为系统服务自动启动。您可以使用以下命令来管理Jenkins服务:

3.2.1 查看 Jenkins 服务状态
$ sudo systemctl status jenkins

image-20241125225022472

3.2.2 停止 Jenkins 服务
$ sudo systemctl stop jenkins

image-20241125225054841

3.2.3 启动 Jenkins 服务
$ sudo systemctl start jenkins

image-20241124173525375

3.2.4 重启 Jenkins 服务
$ sudo systemctl restart jenkins

image-20241124173547589

原文链接:https://mp.weixin.qq.com/s/NVMHVkxw_lxE6gXDmX5r_Q

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

image-20241126213737356

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

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

相关文章

R的中文文本处理包--tmcn

文章目录 介绍tmcn 和 jieba 的关系函数:catUTF8toUTF8实例 介绍 tmcn 包是 R 语言中的一个用于处理和分析中文文本的包,特别适用于中文文本的分词、词频统计和文本挖掘等任务。以下是 tmcn 包的基本用法,包括安装、常用函数和示例。 一个用…

64 基于32单片机的温湿度检测

所有仿真详情导航: PROTEUS专栏说明-CSDN博客 目录 一、主要功能 二、硬件资源 三、主程序编程 四、资源下载 一、主要功能 基于STM32F103C8T6单片机,采用DHT11检测温湿度,通过OLED屏幕显示,温度小于15,则继电器吸合驱动热风扇转动,高于20停止,湿度低于40%,则对应…

用Python绘制医学热图

在医学研究和临床实践中,数据的可视化是不可或缺的一部分。通过直观的数据展示,医学专业人员可以更好地理解各种疾病的治愈率、治疗效果以及医院之间的差异。今天,我们将介绍一种强大的数据可视化工具——热图(Heatmap&#xff09…

WPF 本地生成验证码

1、效果如下图&#xff0c;点击图片可更新验证码&#xff08;其实图片就是一个Button的背景图&#xff09;。 2、主要使通过用户控件创建&#xff0c;UCVerificationCode.xaml代码如下。 <UserControl x:Class"UC.UCVerificationCode"xmlns"http://schemas.…

彻底理解ThreadLocal的应用场景和底层实现

一.概念 定义&#xff1a; ThreadLocal 是 Java 中所提供的线程本地存储机制&#xff0c;可以利用该机制将数据缓存在某个线程内部&#xff0c;该线程可以在任意时刻、任意方法中获取缓存的数据。 其实是可以通过调用 Set() 方法往里面存入值&#xff0c;存入的值是每个线程互…

视频 的 音频通道提取 以及 视频转URL 的在线工具!

视频 的 音频通道提取 以及 视频转URL 的在线工具&#xff01; 工具地址: https://www.lingyuzhao.top/toolsPage/VideoTo.html 它提供了便捷的方法来处理视频文件&#xff0c;具体来说是帮助用户从视频中提取音频轨道&#xff0c;并将视频转换为可以通过网络访问的URL链接。无…

shell自动显示当前git的branch

效果简介&#xff1a; 1. 如果没在git仓库&#xff0c;显示无变化 2. 如果在git仓库&#xff0c;显示当前分支 实现方法&#xff1a; 在~/.bashrc 里添加&#xff1a; function git_branch { test -d .git && branch"git branch | grep "^\*" | sed…

pytorch生成对抗网络

# 生成对抗网络 import os import torch import torchvision import torch.nn as nn from torchvision import transforms from torchvision.utils import save_image # Device configuration device torch.device(cuda if torch.cuda.is_available() else cpu) # 超参数 late…

taro小程序进入腾讯验证码

接入原因 昨天突然晚上有人刷我们公司的登录发送短信接口&#xff0c;紧急将小程序的验证码校验更新上去了 接下来就是我们的接入方法&#xff0c;其实很简单&#xff0c;不过有时候可能大家着急就没有仔细看文档&#xff0c;腾讯验证码文档微信小程序地址&#xff0c;注意这里…

Node.js 新手教程

1、nodejs简介 Node.js 是一个开源和跨平台的 JavaScript 运行时环境。它是几乎所有类型项目的流行工具&#xff01; Node.js 在浏览器之外运行 V8 JavaScript 引擎&#xff08;Google Chrome 的核心&#xff09;。这使得 Node.js 的性能非常出色。 Node.js 应用程序在单个进…

从GCC源码分析C语言编译原理——源码表层分析(脚本篇)

目录 一、目录结构 二、有意思的小功能 三、install脚本 脚本变量和设置 程序名称变量 模式和命令 参数解析 主要逻辑 四、主要功能脚本 ------------------------------------------------------------------------------------------------------------------------…

Mybatis 学习 之 XML 手册

目录 单次执行单次新增单次更新单次删除 批量执行批量新增批量更新for 循环执行更新for 循环生成多条 sql&#xff0c;一次执行 批量删除 参数传递预处理方式 (OGNL表达式 #{})数据类型转换 直接替换 (EL表达式 ${}) 安全 单次执行 单次新增 <insert id"insert"…

自定义指令,全局,局部,注册

让输入框自动获取焦点(每次刷新自动获取焦点&#xff09; <template><div><h3>自定义指令</h3><input ref"inp" type"text"></div> </template><script> export default {mounted(){this.$refs.inp.focus…

CSS3 动画详解,介绍、实现与应用场景详解

CSS3 动画概述 CSS3 动画是通过 CSS3 的新特性来实现元素的动态变化。与传统的 JavaScript 动画不同,CSS3 动画主要通过 CSS 属性的变化来实现动画效果,具有高效、轻量和易于实现的优点。CSS3 动画通常用于网页的动态交互效果、过渡效果、元素移动、缩放、旋转等场景。 一、…

二、点亮希望之光:寄存器与库函数驱动 LED 灯

文章目录 一、寄存器1、存储器映射2、存储器映射表3、寄存器4、寄存器映射5、寄存器重映射6、总线基地址、外设基地址、外设寄存器地址7、操作寄存器&#xff08;以操作一个GPIO口为例&#xff09;1. 寄存器地址定义部分2. GPIOD_Configuration 函数部分3. main 函数部分 二、库…

【特殊子序列 DP】力扣1137. 第 N 个泰波那契数

泰波那契序列 Tn 定义如下&#xff1a; T0 0, T1 1, T2 1, 且在 n > 0 的条件下 Tn3 Tn Tn1 Tn2 给你整数 n&#xff0c;请返回第 n 个泰波那契数 Tn 的值。 示例 1&#xff1a; 输入&#xff1a;n 4 输出&#xff1a;4 解释&#xff1a; T_3 0 1 1 2 T_4 1 …

梯度下降法求解局部最小值深入讨论以及 Python 实现

文章目录 0. 前期准备1. 局部最小值2. 例子3. 讨论3.1 增加迭代次数3.2 修改学习率 η \eta η3.3 修改初始值 x 0 x^0 x0 4. 总结参考 0. 前期准备 在开始讲梯度下降法求解函数的局部最小值之前&#xff0c; 你需要有梯度下降法求解函数的最小值的相关知识。 如果你还不是…

css部分

前面我们学习了HTML&#xff0c;但是HTML仅仅只是做数据的显示&#xff0c;页面的样式比较简陋&#xff0c;用户体验度不高&#xff0c;所以需要通过CSS来完成对页面的修饰&#xff0c;CSS就是页面的装饰者&#xff0c;给页面化妆&#xff0c;让它更好看。 1 层叠样式表&#…

7-zip如何分卷压缩文件并加密?

想要压缩的文件过大&#xff0c;想要在压缩过程中将文件拆分为几个压缩包并且同时为所有压缩包设置加密应该如何设置&#xff1f; 想要分卷压缩文件并加密一起操作就可以完成了&#xff0c;设置方法如下&#xff1a; 打开7-zip&#xff0c;选中需要压缩的文件&#xff0c;选择…

14.在 Vue 3 中使用 OpenLayers 自定义地图版权信息

在 WebGIS 开发中&#xff0c;默认的地图服务通常会带有版权信息&#xff0c;但有时候我们需要根据项目需求自定义版权信息或添加额外的版权声明。在本文中&#xff0c;我们将基于 Vue 3 的 Composition API 和 OpenLayers&#xff0c;完成自定义地图版权信息的实现。 最终效果…