Jenkins持续集成与交付安装配置

ops/2025/1/13 3:15:51/

Jenkins 是一款开源的持续集成(CI)和持续交付(CD)工具,它主要用于自动化软件的构建、测试和部署流程。为项目持续集成与交付功能强大的应用。下面我们来介绍下它的安装与配置。

环境准备
  • 更新系统组件(这里以ubuntu为例)
    sudo apt update
    sudo apt upgrade
    
  • 主机安装jdk11及以上版本
    sudo apt install openjdk-11-jdk#编辑~/.bashrc或~/.bash_profile
    export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
    
  • 主机安装git环境
    sudo apt install git
    
  • 主机安装maven环境
    sudo apt install maven
    
jenkins_22">开始安装jenkins

添加存储库(仓库源,未执行将出现not found错误)

wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
echo deb http://pkg.jenkins.io/debian-stable binary/ | sudo tee /etc/apt/sources.list.d/jenkins.list

安装jenkins(先更新一下系统apt update)

sudo apt install jenkins
待安装完成访问地址开始初始化

默认端口为8080
访问 http://<你的IP>:8080,你将看到Jenkins的初始化页面。
按照页面提示,获取管理员密码。
初始化Jenkins,包括解锁、安装插件、创建管理员账户和配置系统。

jenkins_40">恢复jenkins授权策略

有时在迁移过程中导致授权发生变化不能启动如何恢复

在安装了Role-based Authorization Strategy插件后,修改了授权导致jenkins无法进入配置界面
修改/var/lib/jenkins/config.xml,并替换以下配置内容,然后重启jenkins
vim /var/lib/jenkins/config.xml

<authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy"><denyAnonymousReadAccess>true</denyAnonymousReadAccess></authorizationStrategy><securityRealm class="hudson.security.HudsonPrivateSecurityRealm"><disableSignup>true</disableSignup><enableCaptcha>false</enableCaptcha></securityRealm>

修改配置后重启jenkins

systemctl restart jenkins
jenkins_61">终止jenkins工作任务

获取当前用户的crumb

curl -s http://<用户名>:<密码>@<JENKINS_URL>/crumbIssuer/api/jsoncurl -s http://xiye:xiye2024@192.168.3.100:8080/crumbIssuer/api/json

获取上面对应用户的API Token

Jenkins图标——>Manage Jenkins——>Users——>新建用户换其它账号登录Jenkins,选择第一步建的用户并点击配置 ,在API Token处查看或添加新的token

终止正在执行的任务

curl --request POST  -u "<用户名>:<API Token>" "http://192.168.3.100:8080/job/mongo-data-sync/lastBuild/stop"示例:
curl --request POST  -u "xiye:34c73c1bfee9b18ad1796b17b5ffa2c1" "http://192.168.3.100:8080/job/mongo-data-sync/lastBuild/stop"

关于jenkins配置及使用就介绍到这里了,如有其它问题和功能也可以在评论区里提出来后期继续完善。


http://www.ppmy.cn/ops/149629.html

相关文章

Docker 容器管理

容器是一个 image 的实例&#xff0c;它是我们用 image 文件生成出来的具体应用。 Nginx 服务器 我们在 pull 一个 Nginx image 到本地电脑&#xff0c;用它举例在介绍一些常用的容器管理命令。 // 获取 nginx 镜像 sudo docker pull nginx// 运行 nginx 镜像 sudo docker r…

在 Ubuntu 22.04 上从 Wayland 切换到 X11的详细步骤

在 Ubuntu 22.04 上从 Wayland 切换到 X11&#xff0c;步骤其实很简单&#xff0c;主要是在登录界面进行选择。以下是详细的步骤&#xff1a; 步骤 1&#xff1a;退出当前会话 首先&#xff0c;点击屏幕右上角的用户菜单&#xff0c;选择 注销 或 退出&#xff0c;以退出当前…

Flutter:吸顶效果

在分页中&#xff0c;实现tab吸顶。 TDNavBar的screenAdaptation: true, 开启屏幕适配。 该属性已自动对不同手机状态栏高度进行适配。我们只需关注如何实现吸顶。 view import package:ducafe_ui_core/ducafe_ui_core.dart; import package:flutter/material.dart; import p…

QT + Opencv 实现灰度模板匹配

QT Opencv 实现灰度模板匹配 实现思路 1.模板创建代码思路 1 初始化和准备&#xff1a; 使用 cv::buildPyramid 函数构建图像金字塔。图像金字塔是一种多分辨率表示&#xff0c;每个层级的图像分辨率逐步降低。 调整 m_TemplData 的大小以匹配图像金字塔的层级数。 计算每…

Monaco Editor 系列报错修复:webpack-cli已经下载了但是还报错

今天想把项目push到gitee上&#xff0c;复制、拖动改动了好多&#xff0c;导致项目起不来了&#xff0c;从头安装依赖&#xff0c;但是出现了一个奇怪的报错。众所周知&#xff0c;我们启动项目是在 website 目录下&#xff0c;安装依赖也是在这个目录下&#xff0c;我webpack-…

SVM赛道概览:MoveVM落地,SVM能走多远

Sonic SVM、SOON、Eclipse全方位解读。 作者&#xff1a;jk&#xff1b;编辑&#xff1a;郝方舟 出品 | Odaily星球日报&#xff08;ID&#xff1a;o-daily&#xff09; 随着高性能与可扩展性的需求愈发迫切&#xff0c;Solana Virtual Machine&#xff08;SVM&#xff09;正逐…

老榕树的java专题:探索 Nacos:微服务架构中的配置与服务发现利器

在当今微服务架构盛行的时代&#xff0c;如何高效地管理配置信息以及实现服务之间的发现与协调成为了开发者们重点关注的问题。而 Nacos&#xff08;Naming and Configuration Service&#xff09;的出现&#xff0c;就像是为微服务搭建起了一座坚实的桥梁&#xff0c;让这些复…

计算机毕业设计hadoop+spark+hive新能源汽车推荐系统 汽车数据分析可视化大屏 新能源汽车推荐系统 汽车爬虫 汽车大数据 机器学习

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…