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

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

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

添加存储库(仓库源,未执行将出现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授权策略

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

在安装了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工作任务

获取当前用户的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.lryc.cn/news/519672.html

相关文章:

  • ESP32作为Wi-Fi AP模式的测试
  • 【爬虫】单个网站链接爬取文献数据:标题、摘要、作者等信息
  • Android RIL(Radio Interface Layer)全面概述和知识要点(3万字长文)
  • leetcode_2816. 翻倍以链表形式表示的数字
  • 【论文阅读】MAMBA系列学习
  • MySQL教程之:批量使用mysql
  • 17_Redis管道技术
  • 【LC】3270. 求出数字答案
  • 【redis】ubuntu18安装redis7
  • d2j-dex2jar classes.dex 执行报错:not support version 问题解决
  • 智慧城市应急指挥中心系统平台建设方案
  • QT鼠标、键盘事件
  • Ceph分布式存储集群,不仅仅是一个简单的对象存储解决方案
  • DSP+Simulink——点亮LED灯(TMSDSP28379D)超详细
  • Linux 环境下编译安装 OpenCV 4.8.x
  • phpenc加密程序源码
  • 学英语学Elasticsearch:04 Elastic integrations 工具箱实现对第三方数据源的采集、存储、可视化,开箱即用
  • 2024.10.12 校招 实习 内推 面经
  • ios越狱脚本巨魔商店安装教程
  • 浅谈容灾技术方案详解
  • 时序数据库InfluxDB—介绍与性能测试
  • Python的循环
  • 【机器学习】聚类评价指标之福尔克斯–马洛斯指数(Fowlkes–Mallows Index, FMI)
  • 分享一次面试经历
  • 网络攻击行为可视化分析系统【数据分析 + 可视化】
  • Qt 智能指针
  • CODESYS MODBUS TCP通信(禾川Q1 PLC作为MODBUS TCP从站)
  • 10.STM32F407ZGT6-内部温度传感器
  • 运维安全中心(堡垒机)
  • Linux OOM | Early OOM | 进程监视