Docker部署Jenkins服务
文章目录
- 1.下载Jenkins服务
- 2.部署Java21(可选)
- 2.1 安装Java21
- 3.Maven3.9.9安装
- 4.启动Jenkins
- 5.初始化Jenkins
- 5.1 入门
- 5.2 安装推荐的插件
- 5.3 创建第一个管理员用户
- 5.4 实例配置
- 5.5 Jenkins已就绪
- 5.6 开始使用Jenkins
- 5.7 重启Jenkins
- 6.配置Jenkins
- 6.1 配置Jenkins镜像源
- 6.2 配置Maven
- 6.3 配置JDK
1.下载Jenkins服务
https://www.jenkins.io/download/

sudo docker pull jenkins/jenkins:2.492.3

2.部署Java21(可选)
# Java21可以不安装,可选选项
https://www.jenkins.io/doc/book/platform-information/support-policy-java/

- 下载Java21
https://www.oracle.com/cn/java/technologies/downloads/#java21

2.1 安装Java21
# 1.解压
tar -zxvf jdk-21_linux-x64_bin.tar.gz -C /opt/# 2.配置环境变量
vim /etc/profile
export JAVA_HOME=/opt/jdk-21.0.6
export PATH=$JAVA_HOME/bin:$PATH
source /etc/profile# 3.验证Java
(base) [root@sonarqube19 ~]# java -version
java version "21.0.6" 2025-01-21 LTS
Java(TM) SE Runtime Environment (build 21.0.6+8-LTS-188)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.6+8-LTS-188, mixed mode, sharing)
3.Maven3.9.9安装
# 1.下载
https://downloads.apache.org/maven/maven-3/3.9.9/binaries/

# 2.解压
tar -zxvf apache-maven-3.9.9-bin.tar.gz -C /opt/# 3.配置环境变量
vim /etc/profile
export MAVEN_HOME=/opt/apache-maven-3.9.9
export PATH=$PATH:$MAVEN_HOME/bin
source /etc/profile# 4.验证
(base) [root@sonarqube19 ~]# mvn -version
Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: /opt/apache-maven-3.9.9
Java version: 21.0.6, vendor: Oracle Corporation, runtime: /opt/jdk-21.0.6
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1160.el7.x86_64", arch: "amd64", family: "unix"
4.启动Jenkins
# 1.创建Jenkins目录
mkdir -p /jenkins# 2.修改/jenkins权限
sudo chown -R 1000:1000 /jenkins # 将目录所有者设为UID 1000
sudo chmod -R 755 /jenkins # 设置读写权限:ml-citation{ref="1,5" data="citationList"}# 3.启动Jenkins
docker run -d \--name jenkins \--restart=always \--privileged=true \-p 8080:8080 -p 50000:50000 -p 15340:15340 \-v /jenkins/jenkins_home:/var/jenkins_home \-v /jenkins/logs:/var/log/jenkins \-v /jenkins/docker.sock:/var/run/docker.sock \-v /jenkins/docker:/usr/bin/docker \-v /opt/jdk-21.0.6:/usr/local/java \-v /opt/apache-maven-3.9.9:/var/maven \-v /etc/localtime:/etc/localtime:ro \jenkins/jenkins:2.492.3# 4.启动失败后,报错没有权限,需要重新赋予权限
sudo chown -R 1000:1000 /jenkins
sudo chmod -R 755 /jenkins
5.初始化Jenkins
访问:http://192.168.120.19:8080/
5.1 入门
sudo docker logs jenkins*************************************************************
*************************************************************
*************************************************************Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:87dd1a25d8344028b8d17722a4c94d83This may also be found at: /var/jenkins_home/secrets/initialAdminPassword*************************************************************
*************************************************************
*************************************************************

5.2 安装推荐的插件


5.3 创建第一个管理员用户
用户名:admin
密码:admin

5.4 实例配置

5.5 Jenkins已就绪

5.6 开始使用Jenkins

5.7 重启Jenkins
http://192.168.120.19:8080/restart/


6.配置Jenkins
6.1 配置Jenkins镜像源
# 华为开源镜像站:
https://mirrors.huaweicloud.com/jenkins/updates/update-center.json

配置完毕之后,重启

6.2 配置Maven

6.3 配置JDK

相关文章:
Docker部署Jenkins服务
文章目录 1.下载Jenkins服务2.部署Java21(可选)2.1 安装Java21 3.Maven3.9.9安装4.启动Jenkins5.初始化Jenkins5.1 入门5.2 安装推荐的插件5.3 创建第一个管理员用户5.4 实例配置5.5 Jenkins已就绪5.6 开始使用Jenkins5.7 重启Jenkins 6.配置Jenkins6.1 …...
[ctfshow web入门] web40
信息收集 怎么一下子多这么多过滤啊,我以为跳过了好几题 这又能eval了,但是连$也不能用了 不能用. * ?,所以打不出fla*或者fla?????了 不能用/,构造不出日志注入和伪协议包含 仔细观察,禁的是中文的括号&#x…...
蓝桥杯c ++笔记(含算法 贪心+动态规划+dp+进制转化+便利等)
蓝桥杯 #include <iostream> #include <vector> #include <algorithm> #include <string> using namespace std; //常使用的头文件动态规划 小蓝在黑板上连续写下从 11 到 20232023 之间所有的整数,得到了一个数字序列: S12345…...
UE5 Windows游戏窗口置顶
参考资料:UE5 UE4 项目设置全局置顶_ue4运行设置置顶-CSDN博客 修改完build.cs后,关掉重新生成解决方案。(不然可能编译报错,在这卡了半个小时) 不知道怎么用C的,可以用这个 Topmost - Keep Editor/Game w…...
Qt问题之 告别软件因系统默认中文输入法导致错误退出的烦恼
1. 问题 使用Qt进行研发时,遇到一个问题,当在系统默认输入法中文(英文输入法或者搜狗就不会触发闪退)的情况下,选中QTableWidget控件(QTableWidgetItem有焦点,但是不双击)ÿ…...
力扣热题100刷题day62|283.移动零、39.组合总和、94.二叉树的中序遍历
1.283.移动零——双指针 快慢两个指针,慢指针指向新数组,快指针遍历旧数组,寻找非0元素,找到后,交换快慢指针所指向元素; 因为快指针已经遍历过,所以交换前慢指针处的元素都是0; …...
API 请求失败时的处理方法
在使用 Python 爬虫调用 API 时,请求失败是一个常见的问题。这可能是由于网络问题、API 限制、服务器错误或其他原因导致的。为了确保爬虫的稳定性和可靠性,我们需要合理地处理这些失败的请求。以下是一些有效的处理方法: 1. 捕获异常 使用…...
【MySQL | 八、 事务管理】
文章目录 什么是事务?事务的特性:事务的意义事务的提交查看事务提交方式事务的自动提交事务的手动提交开始事务执行SQL操作事务操作提交事务示例: 事务的隔离级别并发访问的基本概念并发事务的典型问题对ACID特性的影响查看和设置隔离属性各个…...
AlDente Pro for Mac电脑 充电限制保护工具
AlDente Pro for Mac电脑 充电限制保护工具 一、介绍 AlDente Pro for Mac,是一款充电限制保护工具,是可以限制最大充电百分比来保护电池的工具。锂离子和聚合物电池(如 MacBook 中的电池)在40% 至 80% 之…...
算法训练之动态规划(一)
♥♥♥~~~~~~欢迎光临知星小度博客空间~~~~~~♥♥♥ ♥♥♥零星地变得优秀~也能拼凑出星河~♥♥♥ ♥♥♥我们一起努力成为更好的自己~♥♥♥ ♥♥♥如果这一篇博客对你有帮助~别忘了点赞分享哦~♥♥♥ ♥♥♥如果有什么问题可以评论区留言或者私信我哦~♥♥♥ ✨✨✨✨✨✨ 个…...
Navicat连接远程PostGreSQL失败
问题描述 使用本地Navicat连接Windows远程服务器上部署的PostGreSQL数据库时,出现以下错误: 解决方案 出现以上报错信息,是因为PostGreSQL数据库服务尚未设置允许客户端建立远程连接。可做如下配置, 1. 找到PostGreSQL数据库安装目录下的data子文件夹,重点关注:postgres…...
漏洞扫描系统docker版本更新(2025.4.10)
一、github地址 https://github.com/huan-cdm/info_scan本人一直维护的一个项目,持续更新中,感兴趣的小伙伴帮忙点点星 二、docker版本更新 1. 账号密码:nginx/web/mysql:admin/123456 2. 创建docker自定义网络,使容…...
新一代达梦官方管理工具SQLark:可视化建表操作指南
在数据库管理工作中,新建表是一项基础且频繁的操作。SQLark 的可视化建表功能为我们提供了一种高效、便捷且丝滑流畅的建表新体验。一起来了解下吧。 SQLark 官方下载链接:www.sqlark.com 新建表作为常见的功能,相比其他管理工具,…...
什么是EXR透视贴图 ?
EXR透视贴图是一种基于 OpenEXR 格式的高动态范围(HDR)图像技术,主要用于3D建模、渲染和视觉特效领域。它通过高精度图像数据和透视映射功能,为场景创建逼真的光影效果和空间深度。 技术原理 高动态范围(HDR…...
音频转文本:如何识别音频成文字
Python脚本:MP4转MP3并语音识别为中文 以下是一个完整的Python脚本,可以将MP4视频转换为MP3音频,然后使用语音识别模型将音频转换为中文文本。 准备工作 首先需要安装必要的库: pip install moviepy pydub SpeechRecognition openai-whisper完整脚本 import os from m…...
每日一题(小白)数组娱乐篇21
由于题意可知我们是要将对应的数字转换为英文,我们要考虑两点一个是进制的转换,也就是类似于我们的十进制一到9就多一位,这里的进制就是Z进制也就是27进制一旦到26下一位则进位;另一方面要考虑数字的转换也就是1~26对应A~Z。解决上…...
LINUX的使用(1)-挂载云硬盘
1.磁盘的挂载: 这个输出是来自 fdisk 或类似的工具,它展示了两块磁盘的分区信息。让我们逐个分析: 第一块磁盘 /dev/sda: 磁盘大小: 53.7 GB (约 53687091200 字节),总共有 104857600 个扇区。扇区单位: 每个扇区大小为 512 字节…...
GPT-4o-image模型:开启AI图片编辑新时代
在生成式AI技术爆发式迭代的今天,智创聚合API率先突破多模态创作边界,正式发布集成GPT-4o-image模型的创作平台,以“文生图-图生图-循环编辑”三位一体的技术矩阵,重新定义数字内容生产流程。生成图像效率较传统工具提升300%&…...
基于Python的网络爬虫技术研究
基于Python的网络爬虫技术研究 以下从多个方面为你介绍基于 Python 的网络爬虫技术: 概述 网络爬虫是一种自动获取网页内容的程序,在 Python 中可以借助诸多强大的库和工具实现。网络爬虫能应用于数据采集、搜索引擎、舆情监测等众多领域。 核心库 …...
使用pip3安装PyTorch与PyG,实现NVIDIA CUDA GPU加速
使用python3的pip3命令安装python依赖库。 # python3 -V Python 3.12.3 # # pip3 -V pip 25.0.1 from /root/.pyenv/versions/3.12.3/lib/python3.12/site-packages/pip (python 3.12)Usage: pip3 install [options] <package> ...pip3 install [options] -r <re…...
Rust主流框架性能比拼: Actix vs Axum vs Rocket
本内容是对知名性能评测博主 Anton Putra Actix (Rust) vs Axum (Rust) vs Rocket (Rust): Performance Benchmark in Kubernetes 内容的翻译与整理, 有适当删减, 相关指标和结论以原作为准 在以下中,我们将比较 Rust 生态中最受欢迎的几个框架。我会将三个应用程序…...
设计模式-观察者模式和发布订阅模式区别
文章目录 其他不错的文章 二者有类似的地方,也有区别。 引用的文章说的已经比较清楚了,这里只列出对比图。 对比点观察者模式发布订阅模式中间人角色无事件中心,观察者直接订阅目标有事件中心,发布者与订阅者通过事件中心通信关系…...
【QT】QT的消息盒子和对话框(自定义对话框)
QT的消息盒子和对话框(自定义对话框) 一、消息盒子QMessageBox1、弹出警告盒子示例代码:现象: 2、致命错误盒子示例代码:现象: 3、帮助盒子示例代码:现象: 4、示例代码: …...
ArcGIS 给大面内小面字段赋值
文章目录 引言:地理数据处理中的自动化赋值为何重要?实现思路模型实现关键点效果实现步骤1、准备数据2、执行3、完成4、效果引言:地理数据处理中的自动化赋值为何重要? 在地理信息系统(GIS)的日常工作中,空间数据的属性字段赋值是高频且关键的操作,例如在土地利用规划…...
【结合vue源码,分析vue2及vue3的数据绑定实现原理】
结合vue源码,分析vue2及vue3的数据绑定实现原理 Vue 2 数据绑定实现整体思路详细实现1. Observer 类:数据劫持2. Dep 类:依赖收集3. Watcher 类:订阅者 Vue 3 数据绑定实现整体思路详细实现1. reactive 函数:创建响应式…...
WebGPU:前端图形技术的革命性进化与WebGL的未来
WebGPU:前端图形技术的革命性进化与WebGL的未来 WebGPU作为新一代Web图形API,正在引发前端图形领域的深刻变革。本文将全面剖析WebGPU的技术优势、性能表现、应用场景,以及它与WebGL的关系和未来发展趋势。 WebGPU与WebGL的技术代差 WebGP…...
如何实现H5端对接钉钉登录并优雅扩展其他平台
如何实现H5端对接钉钉登录并优雅扩展其他平台 钉钉H5登录逻辑后端代码如何实现?本次采用策略模式工厂方式进行定义接口确定会使用的基本鉴权步骤具体逻辑类进行实现采用注册表模式(Registry Pattern)抽象工厂进行基本逻辑定义具体工厂进行对接…...
Android MediaStore访问的外部存储公共空间都不需要申请权限,这些目录具体指的是哪些
在 Android 10 及更高版本中,通过 MediaStore 访问以下 外部存储公共目录 时,如果操作的是应用自己创建的文件,则无需申请存储权限。这些目录属于系统明确定义的媒体集合,具体包括: 1. 媒体类型目录…...
Java中的Exception和Error有什么区别?还有更多扩展
概念 在Java中,Exception和Error都是Throwable的子类,用于处理程序中的错误和异常情况。 然而,它们在用途和处理方式上有显著的不同: Exception: 用于表示程序在正常运行过程中可能出现的错误,如文件未找…...
LabVIEW真空度监测与控制系统
开发了一种基于LabVIEW的真空度信号采集与管理系统,该系统通过图形化编程语言实现了真空度的高精度测量和控制。利用LabVIEW的强大功能,研制了相应的硬件并设计了完整的软件解决方案,以满足工业应用中对真空度监测的精确要求。 项目背景 随着…...
