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

CentOS 安装jenkins笔记

1. 安装 Java。目前一般jdk要求11以上,否则会报错

2. 手动添加 Jenkins 仓库

先创建一个专门的Jenkins文件夹:mkdir jenkins

然后  执行 

sudo curl -fsSL https://pkg.jenkins.io/redhat/jenkins.io.key -o /etc/pki/rpm-gpg/jenkins.io.key
然后,更新你的仓库配置文件。编辑或创建 /etc/yum.repos.d/jenkins.repo 文件,内容如下:

[Jenkins]
name=Jenkins
baseurl=https://pkg.jenkins.io/redhat/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/jenkins.io.key
enabled=1

3. 清理 YUM 缓存并安装

sudo yum clean all
sudo yum makecache

再尝试安装Jenkins

sudo yum install jenkins

启动 Jenkins 服务

sudo systemctl start jenkins
sudo systemctl enable jenkins


4. 检查 Jenkins 状态

sudo systemctl status jenkins

可能遇到的一些问题

1.例如会报以下错误:

Jul 14 14:24:53 iZ7xv7q3yjgje58dc089w0Z systemd[1]: start request repeated too quickly for jenkins.service
Jul 14 14:24:53 iZ7xv7q3yjgje58dc089w0Z systemd[1]: Failed to start Jenkins Continuous Integration Server.
Jul 14 14:24:53 iZ7xv7q3yjgje58dc089w0Z systemd[1]: Unit jenkins.service entered failed state.
Jul 14 14:24:53 iZ7xv7q3yjgje58dc089w0Z systemd[1]: jenkins.service failed.
Jul 14 14:24:59 iZ7xv7q3yjgje58dc089w0Z systemd[1]: [/usr/lib/systemd/system/jenkins.service:16] Unknown lvalue 'StartLimitBurst' in section 'Unit'
Jul 14 14:24:59 iZ7xv7q3yjgje58dc089w0Z systemd[1]: [/usr/lib/systemd/system/jenkins.service:17] Unknown lvalue 'StartLimitIntervalSec' in section 'Unit'

找到并编辑 /usr/lib/systemd/system/jenkins.service 文件,找到以下对应的两行配置

StartLimitBurst=5
StartLimitIntervalSec=0

删除或者注释掉

2.  错误2  jdk版本不对应

Jul 14 17:43:15 iZ7xv7q3yjgje58dc089w0Z systemd[1]: Starting Jenkins Continuous Integration Server...
Jul 14 17:43:16 iZ7xv7q3yjgje58dc089w0Z jenkins[1147]: Error: A JNI error has occurred, please check your installation and try again
Jul 14 17:43:16 iZ7xv7q3yjgje58dc089w0Z jenkins[1147]: Exception in thread "main" java.lang.UnsupportedClassVersionError: executable/Main has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
Jul 14 17:43:16 iZ7xv7q3yjgje58dc089w0Z jenkins[1147]: at java.lang.ClassLoader.defineClass1(Native Method)

排除Jenkins问题常用命令

journalctl -u jenkins.service -n 100 --no-pager 

  • journalctl:是用于查看系统日志的工具,特别是与 systemd 相关的日志。它能帮助你查看服务的日志、错误信息以及其他系统事件。

  • -u jenkins.service:表示你要查看的是与 jenkins.service 相关的日志。这里的 -uunit 的缩写,jenkins.service 是 Jenkins 服务的名字。

  • -n 100:表示显示最后的 100 行日志。如果你想查看更多或更少的日志,可以调整这个数字。

  • --no-pager:表示日志输出时不使用分页工具(如 less)。通常,journalctl 会分页输出日志,但加上 --no-pager 之后,它会一次性输出所有日志,而不会等待用户输入以查看更多内容。

http://www.xdnf.cn/news/15348.html

相关文章:

  • DiffDet4SAR——首次将扩散模型用于SAR图像目标检测,来自2024 GRSL(ESI高被引1%论文)
  • 深入浅出Kafka Broker源码解析(下篇):副本机制与控制器
  • 总结一下找素数的三种方法
  • 【Bluedroid】蓝牙协议栈enable流程深度解析
  • 若依(RuoYi)框架项目结构全解析
  • [Dify]-进阶1- Dify 支持的多种 AI 模型解析与选择建议
  • Linux修炼:自动化构建make/Makefile
  • sshpass原理详解及自动化运维实践
  • 微软发布BioEmu模型
  • 【FPGA】AXI总线协议
  • 动态规划题解——单词拆分【LeetCode】
  • VScode链接服务器一直卡在下载vscode服务器,无法连接成功
  • 企业数字化资产管理安全、成本、协作困局难解?
  • MYSQL数据库----DCL语句
  • Linux进程状态实战指南:转换关系、监控命令与状态解析
  • 从代码学习深度强化学习 - DDPG PyTorch版
  • python赤道上空的大气环流剖面图(纬向-高度剖面)
  • 代理模式:控制对象访问
  • Spring AI 项目实战(十七):Spring Boot + AI + 通义千问星辰航空智能机票预订系统(附完整源码)
  • 无缝衔接直播流体验
  • 数据结构 单链表(1)
  • Acrobat 表单中的下拉菜单(附示例下载)
  • ESP-Timer入门(基于ESP-IDF-5.4)
  • 插入类排序的C语言实现
  • Java小白-设计模式
  • C#单例模式管理全局变量
  • OSPF与BGP的联动特性实验案例
  • OSPF与BGP的联动特性
  • Java设计模式之行为型模式(命令模式)
  • 单例模式:确保全局唯一实例