当前位置: 首页 > news >正文

Jenkins----基于 CentOS 或 Docker 安装部署Jenkins并完成基础配置

查看原文

文章目录

  • 基于 CentOS7 系统部署 Jenkins 环境
  • 基于 Docker 安装部署 Jenkins环境
  • 配置 Jenkins 中文模式
  • 配置用户名密码形式的 Jenkins 凭据
  • 配置 ssh 私钥形式的 Jenkins 凭据
  • 配置 Jenkins 执行任务的节点

基于 CentOS7 系统部署 Jenkins 环境

(1)首先确保已经安装jdk,如未安装,请参考 Java----新手一步一步安装 Java 语言开发环境 先安装jdk环境

(2)配置Jenkins源

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

(3)安装Jenkins

yum install epel-release
yum install java-11-openjdk-devel
yum install jenkins

(4)配置Jenkins端口号

vi /etc/sysconfig/jenkins

如下,可自定义修改监听端口

#监听端口
JENKINS_PORT="10003"

(5)配置用户

vi /etc/sysconfig/jenkins

如下,将用户设置为 root

#修改配置
$JENKINS_USER="root"

(6)修改目录权限

chown -R root:root /var/lib/jenkins
chown -R root:root /var/cache/jenkins
chown -R root:root /var/log/jenkins

(7)启动Jenkins

systemctl start jenkins

(8)网页打开Jenkins,如:在网页打开,如 http://192.168.1.210:10003/
如下,根据页面提示找到密码并填入

[root@localhost ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
599ad742855948e0b8af280ad2e1f09f

(9)可以选择推荐的插件

(10)创建一个用户,如admin/admin

(11)如下,点击保存并完成安装

(12)至此,Jenkins搭建完成

基于 Docker 安装部署 Jenkins环境

(1)下载Jenkins镜像

docker pull jenkins/jenkins:lts

(2) 创建挂载目录

mkdir -p /docker/jenkins/var/jenkins_home
chmod 777 /docker/jenkins/var/jenkins_home

(3) 启动docker部署Jenkins

docker run -d -p 10002:8080 -p 10003:50000 -v /docker/jenkins/var/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins jenkins/jenkins:lts

(4) 配置镜像加速器

cd /docker/jenkins/var/jenkins_home/
vi hudson.model.UpdateCenter.xml

然后将url修改https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json ,内容如下:

<?xml version='1.1' encoding='UTF-8'?>
<sites><site><id>default</id><url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url></site>
</sites>

(5) 浏览器打开 ip:10002

(6) 查看管理员密码
这里需要注意一下docker挂载目录

cat /docker/jenkins/var/jenkins_home/secrets/initialAdminPassword

(7) 选择插件安装
此时可以选择“选择插件安装”,这样便于后面了解各种插件的作用

此时可以先不选插件,插件可以后续按需安装

(8) 然后设置管理员账号和密码

(9) 然后选择默认的URL,安装完成后如下

配置 Jenkins 中文模式

(1) 安装locale和Localization: Chinese (Simplified)插件
在【Manage jenkins】-【Manage Plugins 】-【Available】中搜索Locale和Localization: Chinese (Simplified)插件,安装成功后重启jenkins

(2) 设置语言为中文
进入系统管理Manage Jenkins > Configure System,设置 Language为zh_cn,应用后刷新

配置用户名密码形式的 Jenkins 凭据

(1)打开Jenkins后,点击【系统管理】-【管理凭据】

(2)如下,点击【Jenkins】

(3)点击【全局凭据】

(4)点击【添加凭据】

(5)选择【Username with password】,然后填写用户名,比如demo,填写密码,注意,这里描述一定要填写,描述主要是方便后续使用或查看的时候知道这个用户名密码是做什么用的,比如这里填写“demo密钥测试用”,点击【确定】

(6)此时可以看到已经添加成功

配置 ssh 私钥形式的 Jenkins 凭据

在下载代码的时候经常会需要使用ssh私钥,因此,在Jenkins上需要事先配置好ssh私钥的凭证
(1)点击【系统管理】-【管理凭据】

(2)点击【Jenkins】

(3)点击【全局凭据】

(4)点击【添加凭据】

(5)选择【SSH Username with private key】,然后填写描述,主要用于后续辨别凭证的作用,然后填写用户名,这个一般是linux虚拟机上配置的用户,一般为邮箱名,然后选择 【Enter directly】

(6)到linux虚拟机上执行如下命令查看私钥

cat /root/.ssh/id_rsa

复制类似如下的私钥

(7)将私钥复制到步骤(5)中的key处,然后点击确定即可

配置 Jenkins 执行任务的节点

(1)在【Manage jenkins】-【Manage Plugins 】-【Available】中搜索SSH Agent和SSH Build Agents plugin插件,安装成功后重启jenkins

(2)配置 SSH Server:
Jenkins- 系统管理 - 全局安全配置, 把 SSH Server 设置为启用(默认是禁用)

(3)登录jenkins后,点击【系统管理】-【节点管理】

(4)点击【新建节点】

(5)填写节点名称,最好将ip或者计算机名填上,便于后期维护查看

(6)设置节点信息
1)设置工作目录,比如 /var/jenkins/workspace
2)启动方式选择 【Luanch agent via SSH】
3)凭据选择ssh登录此虚拟机的用户名密码,需要提前设置凭据

(7)继续接步骤4设置节点信息
1)Host key确认策略选择不确认
2)节点属性设置Git的路径
可通过在虚拟机上执行 which git 查看git的安装路径,如虚拟机尚未安装,则可参考 Git----学习Git第一步基于 Windows 10 系统和 CentOS7 系统安装 Git
3)设置 JAVA_HOME环境变量,可在虚拟机上通过 echo $JAVA_HOME 查看,如果虚拟机尚未安装jdk,则可参考 Java----新手一步一步安装 Java 语言开发环境

然后点击【保存】,完成节点信息的设置

(8)在虚拟机上为jenkins设置java链接文件

# 这里 /var/jenkins/workspace 为上述步骤设置的节点的工作目录
mkdir -p /var/jenkins/workspace/jdk/bin/     
which java
#  which java 命令的结果,/usr/local/jdk1.8.0_301/bin/java,然后创建软连接
ln -s /usr/local/jdk1.8.0_301/bin/java /var/jenkins/workspace/jdk/bin/java

(9)然后点击刚刚创建的节点

(10)点击【启动代理】

(11)如下图所示,表示节点已经增加成功,并且启动上线成功

至此,Jenkins 基本就搭建起来了。

相关文章:

Jenkins----基于 CentOS 或 Docker 安装部署Jenkins并完成基础配置

查看原文 文章目录 基于 CentOS7 系统部署 Jenkins 环境基于 Docker 安装部署 Jenkins环境配置 Jenkins 中文模式配置用户名密码形式的 Jenkins 凭据配置 ssh 私钥形式的 Jenkins 凭据配置 Jenkins 执行任务的节点 基于 CentOS7 系统部署 Jenkins 环境 &#xff08;1&#xff…...

flume系列之:监控flume agent channel的填充百分比

flume系列之:监控flume agent channel的填充百分比 一、监控效果二、获取flume agent三、飞书告警四、获取每个flume agent channel的填充百分比一、监控效果 二、获取flume agent def getKafkaFlumeAgent():# 腾讯云10.130.112.60zk = KazooClient(hosts...

信息安全和网络安全的区别

信息安全与网络安全都属于安全领域&#xff0c;但它们的范围和重点不同。 信息安全主要关注数据的保护&#xff0c;包括对敏感数据进行加密、防止数据丢失或泄露等措施。信息安全通常与数据存储、传输和处理相关。 而网络安全更侧重于保护计算机系统和网络免受攻击、病毒、蠕…...

【开源项目】WPF 扩展 -- 多画面视频渲染组件

目录 1、项目介绍 2、组件集成 2.1 下载地址 2.2 添加依赖 3、使用示例 3.1 启动动画 3.2 视频渲染 3.3 效果展示 4、项目地址 1、项目介绍 Com.Gitusme.Net.Extensiones.Wpf 是一款 Wpf 扩展组件。基于.Net Core 3.1 开发&#xff0c;当前是第一个发布版本 1.0.0&am…...

risc-v system instruction

ECALL ecall 指令以前叫做 scall&#xff0c;用于执行环境的变更&#xff0c;它会根据当前所处模式触发不同的执行环境切换异常, 用来执行需要更高权限才能执行的功能;简单来说&#xff0c;ecall 指令将权限提升到内核模式并将程序跳转到指定的地址。操作系统内核和应用程序其实…...

08 v-text指令

概述 v-text指令主要是用来渲染文本内容&#xff0c;和双大括号的效果基本一致&#xff0c;所以使用场景非常少。 一般情况下&#xff0c;我们都会使用双大括号语法去渲染文本内容&#xff0c;而不是使用v-text指令。 基本用法 我们创建src/components/Demo08.vue&#xff…...

vite基本知识

vite的了解与使用 基本知识 开发时&#xff0c;并不对代码打包&#xff0c;而实直接采用ESM的方式运行项目一 项目部署时&#xff0c;再对项目进行打包 核心原理 其核心原理是利用浏览器现在已经支持ES6的import&#xff0c;碰见import就会发送一个HTTP请求去加载文件 使…...

考研真题c语言

【2016年山西大学考研真题】输入10个学生三门课的成绩&#xff0c;用函数实现&#xff1a;找出最高的分数所对应的学号和成绩。 1. 定义一个结构体 Student 来表示每个学生&#xff0c;包括学号和三门课的成绩。 c typedef struct { int studentID; int score1; i…...

neuq-acm预备队训练week 9 P8604 [蓝桥杯 2013 国 C] 危险系数

题目背景 抗日战争时期&#xff0c;冀中平原的地道战曾发挥重要作用。 题目限制 题目描述 地道的多个站点间有通道连接&#xff0c;形成了庞大的网络。但也有隐患&#xff0c;当敌人发现了某个站点后&#xff0c;其它站点间可能因此会失去联系。 我们来定义一个危险系数 DF…...

【BIG_FG_CSDN】*VMware17pro*Linux*Redhit6网络管理(个人向——学习笔记)

物理机中的网络 查看物理网络的方法 “网络连接”—>单点选中网络的选项-->菜单栏中“查看此连接状态”-->“详细信息” “网络连接”中的VM网卡 在主机上对应的有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两块虚拟网卡&#xff0c;它们分别…...

Nginx location+Nginx rewrite(重写)(新版)

Nginx locationNginx rewrite(重写) Nginx locationNginx rewrite(重写)一、location1、常用的Nginx 正则表达式2、location的类型3、location 的匹配规则4、location 优先级5、location 示例说明5.1只修改网页路径5.2修改nginx配置文件和网页路径5.3一般前缀5.4正则匹配5.5前缀…...

uniapp实现地图电子围栏功能

该功能使用uniapp中内置组件map实现 效果图预览&#xff1a; 实现过程&#xff1a; 1.文档&#xff1a; 2.代码&#xff1a; <template><view><map :style"width: 100%; height:screenHeight" :latitude"latitude" :longitude"longit…...

LeetCode第376场周赛

文章目录 1.Find Missing and Repeated Values2.Divide Array Into Arrays With Max Difference3.Minimum Cost to Make Array Equalindromic 1.Find Missing and Repeated Values 直接暴力过 class Solution { public:vector<int> findMissingAndRepeatedValues(vecto…...

数据仓库与数据挖掘小结

更加详细的只找得到pdf版本 填空10分 判断并改错10分 计算8分 综合20分 客观题 填空10分 判断并改错10分--错的要改 mooc中的--尤其考试题 名词解释12分 4个&#xff0c;每个3分 经常碰到的专业术语 简答题40分 5个&#xff0c;每道8分 综合 画roc曲线 …...

ensp创建配置环境,实现全网互访

文章目录 创建配置环境&#xff0c;实现全网互访配置步骤接入层交换机&#xff08;sw4、sw5&#xff09;划分vlan汇聚层交换机&#xff08;sw2、sw3&#xff09;配置ip地址作为vlan网关、与sw1 ip地址直连核心层交换机&#xff08;sw1&#xff09;配置ip地址与汇聚层交换机&…...

智能优化算法应用:基于JAYA算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于JAYA算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于JAYA算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.JAYA算法4.实验参数设定5.算法结果6.参考文献7.MA…...

ripro后台登录后转圈和图标不显示的原因及解决方法

最近&#xff0c;好多小伙伴使用ripro主题的小伙伴们都发现&#xff0c;登录后台后&#xff0c;进入主题设置就转圈&#xff0c;等待老半天后好不容易显示页面了&#xff0c;却发现图标不显示了&#xff0c;都统一显示为方框。 这是因为后台的js、css这类静态资源托管用的是js…...

android 源码编译android 12

一、python安装 python2 sudo apt-get install python python3 sudo apt-get install python3 二、repo管理多个git repo因为Android源码由多个git组成&#xff0c;故安装repo利于管理git工程. repo安装步骤 a.第一步, 新建一个空白文件夹保存repo引导文件,并包含你的路径…...

CSS第二天导读

1&#xff0c;Emmet语法 Emmet语法的前身是Zen coding&#xff0c;它使用缩写&#xff0c;来提高html / css 的编写速度&#xff0c;Vscode内部已经集成该语法 1.1&#xff0c;快速生成HTML结构语法 1.想要快速生成多个相同标签&#xff0c;加上*就可以了&#xff0c;比如 d…...

scroll-behavior属性使用方法

定义和用法&#xff1a; scroll-behavior 属性规定当用户单击可滚动框中的链接时&#xff0c;是否平滑地&#xff08;具动画效果&#xff09;滚动位置&#xff0c;而不是直线跳转。 <style>element{/* 核心代码 */scroll-behavior: smooth;} </style> 属性值&am…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

Ubuntu系统下交叉编译openssl

一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机&#xff1a;Ubuntu 20.04.6 LTSHost&#xff1a;ARM32位交叉编译器&#xff1a;arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...

java_网络服务相关_gateway_nacos_feign区别联系

1. spring-cloud-starter-gateway 作用&#xff1a;作为微服务架构的网关&#xff0c;统一入口&#xff0c;处理所有外部请求。 核心能力&#xff1a; 路由转发&#xff08;基于路径、服务名等&#xff09;过滤器&#xff08;鉴权、限流、日志、Header 处理&#xff09;支持负…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始&#xff0c;我们会探讨数据链路层的差错控制功能&#xff0c;差错控制功能的主要目标是要发现并且解决一个帧内部的位错误&#xff0c;我们需要使用特殊的编码技术去发现帧内部的位错误&#xff0c;当我们发现位错误之后&#xff0c;通常来说有两种解决方案。第一…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天&#xff0c;Spring AI 作为 Spring 生态系统的新生力量&#xff0c;正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务&#xff08;如 OpenAI、Anthropic&#xff09;的无缝对接&…...

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析

Java求职者面试指南&#xff1a;Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问&#xff08;基础概念问题&#xff09; 1. 请解释Spring框架的核心容器是什么&#xff1f;它在Spring中起到什么作用&#xff1f; Spring框架的核心容器是IoC容器&#…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验&#xff0c;我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育&#xff0c;这并非炒作&#xff0c;而是已经发生的巨大变革。教育机构和教育者不能忽视它&#xff0c;试图简单地禁止学生使…...