Linux(centos)安装Jenkins

news2024/11/20 2:40:39

Jenkins 是一个开源的, 基于Java的自动服务器,提供了一种建立持续集成和持续交付(CI/CD)流水线的简单方法 。

持续集成 (CI)是DevOps实践中,团队成员定期将他们的代码更改提交到版本仓库, 然后运行自动化的构建和测试. 持续交付(CD)是自动构建、测试和部署代码更改到生产环境的一系列实践。

安装Jenkins以前,确保你已经有超级管理或者安装Jenkins的权限。本文安装是使用超级管理员的权限进行安装的。

一、安装JDK

Jenkins 是一个Java应用, 因此第一步是安装JDK,运行以下命令安装那个OpenJDK8 安装包。 如果环境上面已经安装JDK8可以跳过该步骤。

[root@localhost ~]# sudo yum install java-1.8.0-openjdk-devel

安装成功之后可以使用java -version 命令进行验证一下。方法如下:

[root@localhost ~]# java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)

如果配置环境变量后不生效,可以在root账号目录下 vi .zshrc,然后再这个文件里面重新配置下环境变量,那么使用root账户就可以有效了

  • 配置 JAVA_HOME=/usr/local/jdk/jdk11
  • CLASSPATH=$JAVA_HOME/lib/
  • PATH=$PATH:$JAVA_HOME/bin
  • export PATH JAVA_HOME CLASSPATH

二、导入JenkinsLinux本地安装源仓库

Jenkins 不是有效的在本地Linux OS仓库,因此,我们将增加Jenkins官方库在操作系统为了安装Jenkins。 添加Jenkins key到系统中。

[root@localhost ~]# rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

安装Jenkins仓库。

[root@localhost ~]# cd /etc/yum.repos.d/

[root@localhost yum.repos.d]# curl -O https://pkg.jenkins.io/redhat-stable/jenkins.repo

三、安装Jenkins

下面通过以下命令进行安装Jenkins。

[root@localhost ~]# yum -y install jenkins

开启Jenkins服务

[root@localhost ~]# systemctl start jenkins

开启系统启动自动启动Jenkins服务。

[root@localhost ~]# systemctl enable jenkins

检查那个Jenkins服务的状态。

[root@localhost ~]# systemctl status jenkins

四、配置防火墙

配置防火墙允许外部的机器能够访问Jenkins。

[root@localhost ~]# firewall-cmd --permanent --add-port=8080/tcp
[root@localhost ~]# firewall-cmd --reload

五、访问Jenkins以及安装Jenkins插件

通过Jenkins的web接口,我们可以构建、测试和部署软件。在访问Jenkins web界面之前,我们需要设置它。 打开web浏览器并输入以下URL进行回车访问。

http://ip地址:8080

出于安全的考虑, Jenkins把初始密码放到 /var/lib/Jenkins/secrets/initialAdminPassword 文件中阻止没有认证的Jenkins访问安装。 从那个文件中获取密码进行Jenkins的安装。

[root@localhost ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
[root@localhost ~]# 18b628b7df874031932d2400e3b9d050

复制并粘密码到Jenkins设置向导上,然后单击“继续”

安装建议的插件或选择插件安装根据您的需要。我建议您现在安装建议的插件来安装最有用的插件,当然,您可以稍后安装所需的插件。

接着等待那个插件的安装。

为Jenkins创建第一个管理用户。 

为Jenkins设置根URL。

Jenkins现在完成了。你可以通过点击使用Jenkins的start来开始Jenkins的工作。 

要访问Jenkins,请使用浏览器访问下面的URL。 

成功登录后,您将获得Jenkins仪表板。

启动Jenkins Fail

[Jenkins] Failed to start Jenkins Continuous Integration Server 


如果你在安装Jenkins的时候,总是出现下方的错误,而且配置了jdk路径也无法解决,请参考本文的解决办法:
错误信息:

jenkins.service - Jenkins Continuous Integration Server
   Loaded: loaded (/usr/lib/systemd/system/jenkins.service; disabled; vendor preset: disabled)
   Active: failed (Result: start-limit) since Tue 2022-06-07 17:09:46 CST; 20s ago
  Process: 5706 ExecStart=/usr/bin/jenkins (code=exited, status=1/FAILURE)
 Main PID: 5706 (code=exited, status=1/FAILURE)

Jun 07 17:09:45 k8s-master systemd[1]: jenkins.service: main process exited, code=exited, status=1/FAILURE
Jun 07 17:09:45 k8s-master systemd[1]: Failed to start Jenkins Continuous Integration Server.
Jun 07 17:09:45 k8s-master systemd[1]: Unit jenkins.service entered failed state.
Jun 07 17:09:45 k8s-master systemd[1]: jenkins.service failed.
Jun 07 17:09:46 k8s-master systemd[1]: jenkins.service holdoff time over, scheduling restart.
Jun 07 17:09:46 k8s-master systemd[1]: Stopped Jenkins Continuous Integration Server.
Jun 07 17:09:46 k8s-master systemd[1]: start request repeated too quickly for jenkins.service
Jun 07 17:09:46 k8s-master systemd[1]: Failed to start Jenkins Continuous Integration Server.
Jun 07 17:09:46 k8s-master systemd[1]: Unit jenkins.service entered failed state.
Jun 07 17:09:46 k8s-master systemd[1]: jenkins.service failed.

主要看这里,如果你按照普遍的方法解决不了,那一定是报错信息不一样,Process: 5706 ExecStart=/usr/bin/jenkins (code=exited, status=1/FAILURE)

在这里插入图片描述
解决办法(一)

首先安装jdk信息,如果你服务器上已经安装了jdk8,那么就执行

 yum install fontconfig java-8-openjdk
可能会出现已经存在或者其他的提示,不用管,也不影响。
接下来完善Jenkins加载到jdk的配置,
两种办法:

方法一

可以直接在配置文件配置/etc/init.d下的jenkins文件中增加现有jdk的路径:

记得systemctl daemon-reload一下

方法二
也可以直接创建软链接,就像windows创建快捷方式一样简单,不用的时候可以删除这个软链接即可。

ln -s /usr/local/java/jdk1.8.0_291/bin/java /usr/bin/java

随后再次启动Jenkins即可

systemctl start jenkins
 

解决办法(二)

如果不想卸载,那么你也可以不使用systemctl的方式去启动暂停Jenkins,直接用Jenkins自带的服务启动,其实systemctl最终也是执行的这个命令。

cd /etc/init.d

# 启动
./jenkins start

# 停止
./jenkins stop
# 状态
./jenkins status

解决办法(三)
如果按照上边的方法和网上其他的方法都无法解决,你可以卸载了重新按照官方的步骤坐下来,也是可以的。


 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【附源码】计算机毕业设计SSM物业管理系统设计

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

第九章 Ambari二次开发之自定义Flink服务 -- 自定义quiklinks链接

1、自定义quiklink链接功能概述 主要功能:用来配置第三方服务界面链接,如Yarn的管理界面。 服务可以通过在metainfo中加入一串quicklink的引用(一串预定义的JSON字符串)即可。ambari server能解析json文件并将其提供给UI&#xff…

CSS 2 CSS 选择器 - 2 2.5 属性选择器

CSS 文章目录CSS2 CSS 选择器 - 22.5 属性选择器2.5.1 CSS [attribute] 选择器2.5.2 CSS [attribute"value"] 选择器2.5.3 CSS [attribute~"value"] 选择器2.5.4 CSS [attribute|"value"] 选择器2.5.5 CSS [attribute^"value"] 选择器…

渠道数字化有什么好处?如何实现渠道数字化营销?

数字化转型是企业如今谋求商业升维的一种主要方式,即利用数字化技术和能力来赋能企业经营思维数字化、商业模式创新化,达到业务重构升级、实现业务的转型、创新,增长的目的。对于企业而言,数字化其实正是升维企业业务、企业流程及…

【电子通识】为什么高速信号传输要用差分

早期很多设备要接到计算机上,需要通过一些线径粗连接器笨重的总线。如GPIB接口(通用接口总线)是曾经大多台式仪器与计算机相连接的方式。 在文章:【蓝牙专题】蓝牙测试工具及性能标准 中,电脑就是通过USB转GPIB接口与MT8852进行连接,对低功耗蓝牙模块进行测试。 …

稳压二极管有什么特性?稳压二极管的特点

笔者电子信息专业硕士毕业,获得过多次电子设计大赛、大学生智能车、数学建模国奖,现就职于南京某半导体芯片公司,从事硬件研发,电路设计研究。对于学电子的小伙伴,深知入门的不易,特开次博客交流分享经验&a…

Java泛型——帮助你更好的读懂源码<dog>

泛型 泛型就相当于集合的标签&#xff0c;我们在使用集合<>的时候&#xff0c;就是在使用泛型 要知道的是在jdk1.5以前我们只能把集合中的元素设计为Object&#xff0c;之后引入了泛型的概念来解决&#xff0c;我们把元素的类型设计成一个参数&#xff0c;这个类型参数…

【PyTorch深度学习项目实战100例】—— Pytorch时间序列电力数据多输出预测 | 第70例

前言 大家好,我是阿光。 本专栏整理了《PyTorch深度学习项目实战100例》,内包含了各种不同的深度学习项目,包含项目原理以及源码,每一个项目实例都附带有完整的代码+数据集。 正在更新中~ ✨ 🚨 我的项目环境: 平台:Windows10语言环境:python3.7编译器:PyCharmPy…

1024 你学算法了吗?

&#x1f388; 作者&#xff1a;Linux猿 &#x1f388; 简介&#xff1a;CSDN博客专家&#x1f3c6;&#xff0c;华为云享专家&#x1f3c6;&#xff0c;Linux、C/C、云计算、物联网、面试、刷题、算法尽管咨询我&#xff0c;关注我&#xff0c;有问题私聊&#xff01; &…

JUC - 多线程之 单例模式(八)

单例模式&#xff08;Singleton Pattern&#xff09;是一种非常简单的设计模式之一&#xff0c;当我们使用的对象要在全局唯一时就需要用到该模式&#xff0c;以保证对象的唯一性。除此之外&#xff0c;还能避免反复的实例化对象&#xff0c;减少内存开销 单例类提供了一种访问…

踩坑记录——USB键盘睡眠唤醒

踩坑记录——USB键盘睡眠唤醒 目录踩坑记录——USB键盘睡眠唤醒前言1 USB远程睡眠唤醒要注意的几个点2 MCU唤醒之后引起USB异常的几个点结束语前言 前段时间我用一个国产MCU实现了雷蛇键盘的效果&#xff0c;按键支持十键无冲&#xff0c;RGB灯支持单控任意一个灯任意一种颜色…

SpringAMQP (RabbitMQ五种模式 消息转换器)

一、简化Hello World模型实现步骤演示 代码步骤演示如下所示&#xff1a; 消息提供者publisher代码简化&#xff1a; 消息消费者consumer代码简化&#xff1a; 二、Work Queue 工作队列模型 消息提供者代码如下所示&#xff1a; 消息消费者代码如下所示&#xff1a; 消息…

SpringCloudAlibaba【六】微服务架构下的秒杀案例

背景 分布式微服务中的秒杀是怎么实现的呢&#xff1f;接着看下去吧 我们实现一个秒杀微服务&#xff0c;流程逻辑如下 项目搭建 MySQL create database if not exists demo;use demo;drop table if exists skill_goods;create table if not exists skill_goods (id bigint…

1024程序员节|【MySQL从入门到精通】【高级篇】(二十七)外连接和内连接如何进行查询优化呢?join的原理了解一波

您好&#xff0c;我是码农飞哥&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f4aa;&#x1f3fb; 1. Python基础专栏&#xff0c;基础知识一网打尽&#xff0c;9.9元买不了吃亏&#xff0c;买不了上当。 Python从入门到精通 ❤️ 2.网上优质的Python题库很少…

[面试宝典] Linux常见命令及面试题

前言&#xff1a; &#x1f604;作者简介&#xff1a;小曾同学.com,小伙伴们也可以叫我小曾&#xff0c;一个致力于测试开发的博主⛽️ 如果文章知识点有错误的地方&#xff0c;还请大家指正&#xff0c;让我们一起学习&#xff0c;一起进步。&#x1f60a; 座右铭&#xff1a;…

C语言 - 你一定能看懂的扫雷万字详解(加入了递归展开和手动标雷的功能)

C语言之扫雷详解&#xff08;包含递归展开和手动标雷功能&#xff0c;非常强大&#xff01;&#xff09; 文章目录一.写在前面二.效果展示三.整体逻辑四.详解1.进入主函数&#xff0c;打印菜单&#xff0c;玩家作出选择2.定义棋盘的数组并进行赋值3.棋盘的展示4.随机布雷5.开始…

前端开发入门--html--Flask

快速开发网站 pip install flaskfrom flask import Flaskapp Flask(__name__)# 创建了网址 /show/info 和 函数index 的对应关系 # 以后用户在浏览器上访问 /show/info&#xff0c;网站自动执行 index app.route("/show/info") def index():return "中国联通&…

TPH-YOLOv5 | 基于Transformer的YOLOv5小目标检测器 | 四头加注意力

论文地址&#xff1a;https://arxiv.org/pdf/2108.11539.pdf 项目地址&#xff1a;https://github.com/cv516Buaa/tph-yolov5 在无人机捕获的场景中进行对象检测是最近的一项热门任务。由于无人机总是在不同的高度航行&#xff0c;物体尺度变化剧烈&#xff0c;给网络优化带来…

NMEA协议解析

文章目录一、NMEA0183协议1、NMEA基本框架2、常用语句1&#xff09;GNGGA2&#xff09;GNGLL3&#xff09;GNGSA4&#xff09;GPGSV5&#xff09;GNRMC6&#xff09;GNVTG7&#xff09;GNZDA8&#xff09;PAIRCLK等二、异或校验和代码1、网址在线计算BCC2、BCC校验和代码一、NM…

Java语言中的异常处理

异常处理 在java语言中&#xff0c;很机智的将异常作为对象来处理&#xff0c;而且定义一个基类java.lang.Throwable作为所有异常类的父类。在这许多类中一般分为两大类&#xff1a; 错误类(Error)和异常类&#xff08;Expception&#xff09;。 如图&#xff1a; 注&#xf…