CentOs7.8安装原生Jenkins2.38教程

CentOs7.8安装Jenkins教程

      • 前提:
      • 1、下载安装包
      • 2、安装:
      • 3、检验是否安装成功:
      • 4、查询java路径
      • 5、修改配置文件
      • 6、创建jenkins用户
      • 7、给jenkins用户授权
      • 8、开放防火墙端口
      • 9、运行和其他jenkins相关命令
      • 10、异常情况
        • 10.1 提示超时,查询status一直是start(启动中)
        • 10.2 直接运行失败,status查询后提示:Failed to start jenkins Continuous Integration Server
        • 10.3 彻底卸载Jenkins
      • 11、打开网页访问
      • 12、配置密码
      • 13、安装插件
      • 14、配置用户名密码

前提:

CentOs7,安装jdk17,本文就不再介绍了,随便找个帖子就能安装,本文主要介绍疑Jenkins安装疑难杂症(非常详细)

1、下载安装包

随便找个路径,安装2.387.1版本,执行该链接会在目录下得到一个rpm的安装包

wget --no-check-certificate https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.387.1-1.1.noarch.rpm

注意,本教程只针对这个版本,因为Jenkins从10月份已经不再支持centos7,包括2.4+版本都是很难在centos7上安装的,2.2版本的安装配置方式和2.3不同,担心小版本之间也有不同,所以本文只针对2.387.1版本

如果url404失效了,说明该网站调整了,可自行访问https://mirrors.tuna.tsinghua.edu.cn/jenkins,选择尽可能相近的版本

2、安装:

yum -y localinstall jenkins-2.387.1-1.1.noarch.rpm

3、检验是否安装成功:

rpm -ql jenkins

此条命令返回的是Jenkins的一些安装信息,其中jenkins.service就是它的配置文件(区别于老版本)
在这里插入图片描述

4、查询java路径

which java

复制打印的结果,后面用到
在这里插入图片描述

5、修改配置文件

vim /usr/lib/systemd/system/jenkins.service

配置java_home
找到其中的# Environment="JAVA_HOME开头的注释,放开注释,修改值为你的java路径(主要要在bin的上一级):
在这里插入图片描述
修改运行的默认端口号,默认是8080,很容易与别的起冲突,所以我这里修改为9301
在这里插入图片描述
修改java运行源

vim /etc/init.d/jenkins

粘贴上面which java返回的结果(一定要到bin/java,java是个文件不是文件夹)
在这里插入图片描述

6、创建jenkins用户

从jenkins.service配置文件中可以看出,里面指定了jenkins的执行用户,默认是jenkins,若改成root,可能会给生产环境或者jenkins运行带来问题,所以本文这里手动创建用户
在这里插入图片描述
创建用户命令,并指定系统重要文件不可随意修改

chattr -i /etc/group;chattr -i /etc/gshadow;chattr -i /etc/passwd;chattr -i /etc/shadow
groupadd jenkins
useradd -g jenkins jenkins
chattr +i /etc/group;chattr +i /etc/gshadow;chattr +i /etc/passwd;chattr +i /etc/shadow

7、给jenkins用户授权

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

8、开放防火墙端口

firewall-cmd --zone=public --add-port=你之前配置的端口(本文的9301)/tcp --permanent
firewall-cmd --reload

如果是阿里云服务器,需要配置安全组9301->0.0.0.0/0

9、运行和其他jenkins相关命令

# 启动
systemctl start jenkins
# 停止
systemctl stop jenkins
# 查看状态
systemctl status jenkins
# 刷新配置(每次配置文件修改后都需要执行这个才能生效,否则运行时会报错)
systemctl daemon-reload
# 查询jenkins运行日志,执行后通过长按上下键查询完整上下文日志,可用于启动报错的排查
journalctl -xe
# 判断jenkins是否运行成功
netstat -tunlp |grep 输入配置的运行端口

运行后如下图所示就代表成功了
在这里插入图片描述

10、异常情况

异常情况有很多,我把我遇到的坑列出来,但还是得靠各位的查日志排错能力。

10.1 提示超时,查询status一直是start(启动中)
Job for jenkins.service failed because a timeout was exceeded.

若观察journalctl -xe发现有java.lang.RuntimeException: Fontconfig head is null, check your fonts or fonts configuration,可以尝试执行,之后再stop、start即可

yum install -y fontconfig

还有一种可能性是用户没有第7步那几个文件夹的权限

10.2 直接运行失败,status查询后提示:Failed to start jenkins Continuous Integration Server

原因1:
jenkins.service配置文件中,java_home没配对,再仔细阅读我上面写的
原因2:
Linux安装的jdk版本过低,我用的jdk17是没问题的

10.3 彻底卸载Jenkins

有些时候可能哪里错乱了,想重装一下,可以执行此命令彻底卸载

rpm -e jenkins
find / -iname jenkins | xargs -n 1000 rm -rf

卸载完可再执行第3步的命令,若提示未安装证明卸载完成

11、打开网页访问

浏览器访问你的IP和你配置的端口(本文是9301),看到如下画面证明你成功了一大步了,后面都是傻瓜式操作

http://xx.xxx.xxx.xxx:9301

在这里插入图片描述

12、配置密码

第一次进入会要求输入密码,而这个密码就在你服务器上

cat /var/lib/jenkins/secrets/initialAdminPassword

拷贝返回的结果至网页即可,如果输入完点继续没反应,不用惊慌,刷新页面重新点,或者换个火狐浏览器就行了

13、安装插件

下一步我选择安装推荐的插件
在这里插入图片描述
自动安装
在这里插入图片描述

14、配置用户名密码

创建你能记得住的用户名和密码
在这里插入图片描述

url就填访问路径在这里插入图片描述
看到这个页面就代表你成功了!
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/327756.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

DAG最小路径点覆盖,最小路径可重复覆盖,详解

文章目录 前言有向无环图的最小路径点覆盖概念拆点二分图定理**证明** 最小路径可重复覆盖解决策略代码实现 OJ练习 前言 关于二分图:二分图及染色法判定 关于二分图最大匹配:二分图最大匹配——匈牙利算法详解 关于二分图带权最大完备匹配&#xff1…

NFS网络共享服务存储

目录 一、NFS简介 1、NFS定义: 2、NFS的特点 3、NFS的优缺点 4、NFS的原理图示 二、服务端NFS配置文件:/etc/exports 三、实验:NFS共享存储服务配置 1、服务端安装nfs-utils与rpcbind软件包 2、服务端新建共享文件夹目录并赋予权限 …

前端(html+css+javascript)作业--展现家乡的网页

期末期间,老师布置了前端作业,现在放到这里,给各位同志参考。 桂平市是广西壮族自治区的一个美丽的城市,拥有丰富的历史文化和自然景观,属于贵港市管辖,那为什么是看起来是市级而不是县级,其实他…

HAL库配置RS485通信

在配置好串口的基础上完成RS485的配置 一、使能RS485的发送和接收模式引脚 __HAL_RCC_GPIOG_CLK_ENABLE();//高电平是发送模式,低电平是接收模式,默认是接收模式HAL_GPIO_WritePin(PG4_RS485_DIR1_Port, PG4_RS485_DIR1_Pin, GPIO_PIN_RESET);GPIO_Init…

Java基础面试题(三)

Java基础面试题(三) 文章目录 Java基础面试题(三)什么是字节码?采用字节码的好处是什么?为什么说 Java 语言“编译与解释并存”? 文章来自Java Guide 用于学习如有侵权,立即删除 什么是字节码?采用字节码…

Qt命令行安装:linux(ubuntu)

起因是我上一篇文章说的,官网下的安装包卡死在第一步安装界面了。 于是我就问GPT有没有纯命令行的安装方式,果然是有的。 在Ubuntu上安装Qt可以使用以下命令: 1. 首先,添加Qt的官方存储库到系统中: sudo add-apt-rep…

在Ubuntu下载Python3.6 并建立软连接

打开终端,输入su root,进入root模式 su root为了避免权限问题 安装zlib1g-dev apt-get install zlib1g-dev1.然后创建目录 mkdir -p /usr/local/python32.进入python3目录 cd /usr/local/python33.从官网下载好python3.6.2 wget https://www.python.org/ftp/p…

Qt QRubberBand 如何实现鼠标框选控件

QRubberBand类提供了一个矩形或直线,可以指示选择或边界。常见的模式是结合鼠标事件来执行此操作。本文将使用框选QCheckBox控件,来演示QRubberBand是如何配合鼠标进行工作的。 一、RubberBand 框选效果图 二、RubberBand 代码 rubberband.h #ifndef …

【ug572】UltraScale体系结构时钟资源手册节选

概述 时钟架构概述 The UltraScale architecture clocking resources manage complex and simple clocking requirements with dedicated global clocks distributed on clock routing and clock distribution resources. The clock management tiles (CMTs) provide clock f…

经典目标检测YOLO系列(二)YOLOv2算法详解

经典目标检测YOLO系列(二)YOLOv2算法详解 YOLO-V1以完全端到端的模式实现达到实时水平的目标检测。但是,YOLO-V1为追求速度而牺牲了部分检测精度,在检测速度广受赞誉的同时,其检测精度也饱受诟病。正是由于这个原因,YOLO团队在20…

【RT-DETR有效改进】移动设备网络ShuffleNetV1(超轻量化网络主干)

前言 大家好,这里是RT-DETR有效涨点专栏。 本专栏的内容为根据ultralytics版本的RT-DETR进行改进,内容持续更新,每周更新文章数量3-10篇。 专栏以ResNet18、ResNet50为基础修改版本,同时修改内容也支持ResNet32、ResNet101和PP…

5路开关量输入转继电器输出 Modbus TCP远程I/O模块 YL95 传感器信号的测量

特点: ● 五路开关量输入,五路继电器输出 ● 支持Modbus TCP 通讯协议 ● 内置网页功能,可以通过网页查询电平状态 ● 可以通过网页设定继电器输出状态 ● DI信号输入,DO输出及电源之间互相隔离 ● 宽电源供电范围&#x…

django rest_framework 部署doc文档

1.背景 在实际开发过程中,前后端分离的项目,是需要将一份完整的接口文档交付给前端开发人员,这样有利于开发速度和开发质量,以及有可能减少协同时间。 2.内容 本项目是以Pythondjangorest_framework作为技术框架,在这…

VMware workstation安装Endeavouros-Galileo-11虚拟机并配置网络

VMware workstation安装Endeavouros-Galileo-11虚拟机并配置网络 EndeavourOS是基于Arch Linux的滚动式Linux发行。基于Arch来提供方便的安装及预配置好的桌面环境。EndeavourOS通过Calamares图形系统安装器来安装,缺省使用Xfce桌面。该文档适用于在VMware worksta…

61. 旋转链表

题目 给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。 示例 1: 输入:head [1,2,3,4,5], k 2 输出:[4,5,1,2,3]示例 2: 输入:head [0,1,2], k 4 输出:…

基于大数据平台(XSailboat)的计算管道实现MySQL数据源的CDC同步--flink CDC

1. 背景 笔者在先前的一篇文档《数据标签设计 – 大数据平台(XSailboat)的数据标签模块》 提到了关于数据标签的模块,现已实现并应用于项目中。在项目中遇到这样一种情形: 在业务系统中,对某类对象打了标签,现在需要对这类对象进…

IOS-高德地图路径绘制-Swift

本文展示的是在IOS开发中调用高德地图进行驾车路径绘制,开发语言是Swift。 IOS高德地图集成请看:IOS集成高德地图Api 使用路径规划功能需要集成高德地图的搜索功能。 pod AMapSearch定义AMapSearchAPI 定义主搜索对象 AMapSearchAPI ,并继承…

Android 13.0 Launcher3 电话和短信app图标显示未读短信和未接来电的条数

1.概述 在13.0系统产品rom定制化开发中,最近客户有需求要求在电话app图标显示未接来电的条数 在短信app图标上显示未读信息的条数 根据需求首选要在Launcher3的Launcher.java中,启动launcher时,查询未读短信和未接来电 在有未接来电时,更新未接来电的数量 在有未读短信时,…

浏览器网页内嵌Qt-C++音视频播放器的实现,支持软硬解码,支持音频,支持录像截图,支持多路播放等,提供源码工程下载

一.前言 在浏览器中实现播放RTSP实时视频流,⼤体上有如下⼏个⽅案: ⽅案一:浏览器插件⽅案 ActiveX、NPAPI、PPAPI ActiveX插件适用于IE浏览器,NPAPI与PPAPI插件适用于谷歌浏览器,不过这些插件都已经不被浏览器所支持…

【Discuz插件】价值299的论坛积分商城

第一步:首先利用上传工具FTP,将插件上传至网站空间(相信你会搭建论坛,这步应该不是问题,此处滤过) 第二步:找到source文件夹。双击source,可以看到有许多文件,找到plugi…