Linux - 安装 Jenkins(详细教程)

目录

  • 前言
  • 一、简介
  • 二、安装前准备
  • 三、下载与安装
  • 四、配置镜像地址
  • 五、启动与关闭
  • 六、常用插件的安装


前言

虽然说网上有很多关于 Jenkins 安装的教程,但是大部分都不够详细,或者是需要搭配 docker 或者 k8s 等进行安装,对于新手小白而已,学习的成本确实有点大,所以该篇博客就是使用最原始的方式进行 Jenkins 的安装


一、简介

官网:https://www.jenkins.io

中文文档:https://www.jenkins.io/zh/

在这里插入图片描述
Jenkins 是一个开源的持续集成(CI)工具,用于自动化构建、测试和部署软件项目。它提供了一个易于使用和可扩展的平台,帮助团队更高效地开发和交付软件。


二、安装前准备

从 Jenkins 的入门指南 中可以了解到

在这里插入图片描述

Jenkins 对机器的要求是至少要 256 MB 的内存,还需要安装 Java

可以 java -version 命令来检查是否已经安装了 Java,如果有打印出 Java 的版本信息则表示已经安装过了

在这里插入图片描述

如何在 Linux 上安装 Java,具体步骤可参见博客:Linux - java 环境配置

假如你需要像我一样使用 JenkinsLinux 上构建 Java 项目,可先安装一下 maven,可参考博客:Linux - 安装 maven(详细教程)

Linux 上安装 Jenkins 非常简单,如果只是为了学习没必要非得使用 docker,和在 Windows 上用 war 包进行安装差不多,因为 war 是跨平台的,只需要系统上安装了 Java ,均可以 java -jar 的命令运行起来


三、下载与安装

进入 Jenkins 的 官方下载页面

在这里插入图片描述

LTS 是长期支持的版本,是稳定的版本

在下载安装包之前要先确定应该下载哪个版本的 JenkinsJenkins 的版本依赖于 Java 的版本,可在 Jenkins-Java Support Policy 中进行查看

在这里插入图片描述

如果你下载的 Jenkins 版本与本地 Java 不支持,那么 Jenkins 是无法安装成功的,比如说我服务器上 JDK 的版本是 1.8.0_311,也就是 Java 8,那么我只能安装 2.346.1 或者该版本之前的,在 Past Releases 上可以查看到历史版本

注意:不过还是建议大家去安装 JDK-21,直接下载最新版本的 Jenkins,要不然插件安装会比较麻烦

在这里插入图片描述

页面如下 :

在这里插入图片描述

比如我要下载 2.346.1 版本的,就下载该版本的 jenkins.war 文件

在这里插入图片描述

在这里插入图片描述

下载完成之后就把该 war 包上传至服务器

这里我会先在服务器上创建一个 /soft/jenkins 的文件夹用于存放 jenkins 的安装包,并进入到该目录下

# 创建 /soft/jenkins 文件夹
mkdir /soft/jenkins
# 进入到 /soft/jenkins 文件夹下
cd /soft/jenkins

在这里插入图片描述

使用 rz 命令将下载好的安装包上传到该目录下

在这里插入图片描述

可以用 ls 命令查看是否上传成功

在这里插入图片描述

上传成功之后就可以直接用 java -jar 命令启动起来,可以通过 httpPort 来指定端口号

java -jar jenkins.war --httpPort=8080

在这里插入图片描述

首次启动会比较慢,因为需要初始化和存放一些文件到 .jenkins 的目录下

在这里插入图片描述

在启动过程中会打印出 管理员账户密码

这个时候就可以去游览器上访问下 ip:portip 是服务器的 ip 地址,port 是启动 jenkins 的端口,比如:192.163.10.12:8080 ,如果你用的是 云服务器,可别忘了在云服务器上开放该端口号

在这里插入图片描述

在游览器上展示页面如下,就可以进行初始化了

在这里插入图片描述

管理员账户密码 复制到对应的地方,点击 继续

在这里插入图片描述

这里建议点击 选择插件来安装,在点击 ,不安装任何插件,再点击 安装,因为我们没有配置镜像,安装插件是从外网下载
过来的,会比较慢,并且下载的插件可能会出现不兼容等状况,导致失败率很高

在这里插入图片描述

进入到创建管理员页面,填写账户信息后 保存并完成

在这里插入图片描述

进入以下页面配置 jenkinsurl ,一般使用默认的就行了,保存并完成

在这里插入图片描述

初始化完成

在这里插入图片描述

可以点击 开始使用 Jenkins 直接登录进入 Jenkins

在这里插入图片描述


四、配置镜像地址

之前启动 Jenkins 时会打印出管理员账户密码所在文件,例如:/root/.jenkins/secrets/initialAdminPassword/root/.jenkins 就是 jenkins 的工作目录,在 jenkins 的工作目录 .jenkins 中,找到 hudson.model.UpdateCenter.xml 文件打开

在这里插入图片描述

https://updates.jenkins.io/update-center.json 替换成国内镜像网址并 保存

  • 国内镜像网址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
  • 国外镜像网址:https://mirror.xmission.com/jenkins/updates/update-center.json

在这里插入图片描述

再进入到 updates 目录下,编辑 default.json 文件,将该文件中国外的地址全部替换成国内的

在这里插入图片描述

  • https://www.google.com 全部替换成 https://www.baidu.com

在这里插入图片描述

  • https://updates.jenkins.io/download 全部替换成 https://mirrors.tuna.tsinghua.edu.cn/jenkins

在这里插入图片描述


五、启动与关闭

1. 启动

前文是有用到 java -jar 的命令启动了 Jenkins,这里简单总结以下:

  • 前台启动
#特点:当前ssh窗口被锁定,可按 CTRL+C 打断程序运行,或直接关闭窗口,程序退出
java -jar jenkins.war --httpPort=8080#特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行
java -jar jenkins.war --httpPort=8080 & 
  • 后台启动
# nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
# 当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到 nohup.out 的文件中
nohup java -jar jenkins.war --httpPort=8080 &# 这种方法会把日志文件输入到你指定的文件 jenkins.log 中,没有则会自动创建
nohup java -jar jenkins.war --httpPort=8080 >jenkins.log &

如果用的是云服务器,直接后台启动就行了,即使关闭终端,程序依然可以运行

2. 关闭

可以先查询 Jenkins 的进程

ps -ef | grep jenkins

在这里插入图片描述

然后再通过 kill 命令来关闭程序

# 彻底杀死进程号为 pid 的进程
kill -9 pid

六、常用插件的安装

Jenkins 相当于一个平台,它很多的功能都是通过对应的插件去实现的,所以插件安装对于使用 Jenkins 非常的重要

Jenkins 中常用的插件如下:

  • Folders
  • OWASP Markup Formatter
  • Build Timeout
  • Credentials Binding
  • Timestamper
  • Workspace Cleanup
  • Ant
  • Gradle
  • Pipeline
  • GitHub Branch Source
  • Pipeline:GitHub Groovy Libraries
  • Pipeline:Stage View
  • Git
  • SSH Build Agents
  • Matrix Authorization Strategy
  • PAM Authentication
  • LDAP
  • Email Extension
  • Mailer
  • Dark Theme
  • Localization: Chinese (Simplified)

下面我以安装插件 Loale 为例,演示安装插件的大概步骤

访问 Jenkins ,选择 Manage Jenkins

在这里插入图片描述

选择 Manage Plugins

在这里插入图片描述

选择 Available

在这里插入图片描述

搜索栏中搜索 Locale

在这里插入图片描述

如果下载页面没有红色的警告,点击 Download now and install after restart 就会下载最新版本的插件,安装并重启,跳转至重启后 -->

如果有类似:Warning: This plugin is built for Jenkins 2.426.2 or newer. Jenkins will refuse to load this plugin if installed. 这样的提示,就表明当前插件的版本和你所下载的 Jenkins 的版本不兼容,很大概率会安装不成功,这个时候就需要去下载兼容该 Jenkins 版本的插件

点击插件的名称,打开该插件对应的网址

在这里插入图片描述

点击 Releases

在这里插入图片描述

再点击 checksums,就可以看到插件对应的版本了

在这里插入图片描述

比如说我下载的 Jenkins 版本是 2.346.1,那我下载 180.v207501dff9b_a_,点击即可

在这里插入图片描述

插件下载完成

在这里插入图片描述

回到 Jenkins 中,点击 Advanced

在这里插入图片描述

下拉找到 Deploy Plugin,这里可以上传本地下载好的插件,上传完之后点击 Deploy

在这里插入图片描述

就会开始安装该插件

在这里插入图片描述

可以在 Installed 中看到刚刚手动安装的插件了

在这里插入图片描述

接着就重启 Jenkins 使该插件生效

重启方法:在 URL 的后面加上 restart,例如:http://localhost:8080/restart

在这里插入图片描述

点击 Yes 即可重启

在这里插入图片描述

重启完成,再次登录并选择 Manage Jenkins

在这里插入图片描述

选择 Configure System

在这里插入图片描述

找到 Locale 选项,输入 zh_CN 勾选下面的选项,点击 Applysave

在这里插入图片描述

如果以上方法已经生效了,表明汉化插件已经安装完成,如果没有生效,则还需要安装一个汉化包

搜索插件 Localization: Chinese

在这里插入图片描述

按照上述方式进行安装重启

在这里插入图片描述

重启之后可以看到汉化完成

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

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

相关文章

BUGKU-WEB shell

题目描述 题目截图如下: 描述: $poc "a#s#s#e#r#t";$poc_1 explode("#", $poc);$poc_2 $poc_1[0].$poc_1[1].$poc_1[2].$poc_1[3].$poc_1[4].$poc_1[5];$poc_2($_GET[s])进入场景看看:是一个空白的界面 解题思路 …

NCP1380BDR2G芯片中文资料规格书PDF数据手册引脚图图片参数功能价格

产品描述: NCP1380 是一款高性能器件,旨在为准谐振转换器供电。该控制器基于专属的谷锁闭系统,可以在功率负载变轻时进行切换并降低开关频率。这样将产生稳定的运行,即使在漏极-源极谷中总是触发的开关事件下也是如此。此系统可在…

让数据在业务间高效流转,镜舟科技与NineData完成产品兼容互认

近日,镜舟科技与NineData完成产品兼容测试。在经过联合测试后,镜舟科技旗下产品与NineData云原生智能数据管理平台完全兼容,整体运行高效稳定。 镜舟科技致力于帮助中国企业构建卓越的数据分析系统,打造独具竞争力的“数据护城河”…

探索 Spring 框架:企业级应用开发的强大工具

CSDN-个人主页:17_Kevin-CSDN博客 收录专栏:《Java》 目录 一、引言 二、Spring 框架的历史 三、Spring 框架的核心模块 四、Spring 框架的优势 五、Spring 框架的应用场景 六、结论 一、引言 在当今数字化时代,企业级应用开发的需求日…

代码随想录刷题笔记 Day 51 | 单词拆分 No.139 | 多重背包理论基础

文章目录 Day 5101. 单词拆分&#xff08;No. 139&#xff09;<1> 题目<2> 笔记<3> 代码 02. 多重背包理论基础2.1 解题思路2.2 携带矿石资源&#xff08;卡码网No.56&#xff09;<1> 题目<2> 笔记<3> 代码 Day 51 01. 单词拆分&#xff…

python-0002-linux安装pycharm

下载软件包 下载地址&#xff1a;https://download.csdn.net/download/qq_41833259/88944791 安装 # 解压 tar -zxvf 你的软件包 # 进入软件解压后的路径&#xff0c;如解压到了/home/soft/pycharm cd /home/soft/pycharm cd bin # 执行启动命令 sh pycharm.sh # 等待软件启…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的手写数字和符号识别(深度学习训练+UI界面+训练数据集)

摘要&#xff1a;开发手写数字和符号识别对于智能交互系统具有关键作用。本篇博客详细介绍了如何运用深度学习构建一个手写数字和符号识别&#xff0c;并提供了完整的实现代码。该系统基于强大的YOLOv8算法&#xff0c;并对比了YOLOv7、YOLOv6、YOLOv5&#xff0c;展示了不同模…

STM32F103 CubeMX 定时器输出PWM控制呼吸灯

STM32F103 CubeMX 定时器输出PWM控制呼吸灯 1. 生成代码1. 1 配置外部时钟&#xff0c;SWD口1.2 配置定时器31.3 配置定时器2 2. 代码编写的部分 使用的cubmx 软件的版本&#xff1a;6.2.0 最新版本 6.10&#xff08;2024年3月11日&#xff09; 1. 生成代码 1. 1 配置外部时钟…

C++ 拷贝构造函数和运算符重载

目录 一. 拷贝构造函数 1. 引入 2. 拷贝构造的概念 3. 浅拷贝 4. 深拷贝 二. C运算符重载 1. 概念 2. 注意事项 3.举例 一. 拷贝构造函数 1. 引入 我们在创建对象时&#xff0c;能不能创建一个与原先对象一模一样的新对象呢&#xff1f;为了解决这个问题&#x…

关于PolarDB粗浅认识

PolarDB简介 目前&#xff08;20240314&#xff09;&#xff0c;PolarDB有两个版本&#xff1a; PolarDB-PG PolarDB PostgreSQL 版&#xff08;PolarDB for PostgreSQL&#xff0c;简称“PolarDB-PG”&#xff09;是阿里云自主研发的云原生关系型数据库产品&#xff0c;100%…

主板维修一般多少钱?电脑主板常见维修方法交换法

修主板一般要多少钱&#xff1f; 下面就让我们一起来了解一下吧。 电脑主板维修价格根据损坏程度不同而不同 1、电容器最容易损坏。 如果只是更换电容的话&#xff0c;大约需要50元左右。 2、如果主板上的电路损坏&#xff0c;面积越大&#xff0c;价格就越贵&#xff0c;可…

一学就会 | ChatGPT提示词-[简历指令库]-有爱AI实战教程(七)

演示站点&#xff1a; https://ai.uaai.cn 对话模块 官方论坛&#xff1a; www.jingyuai.com 京娱AI 一、导读&#xff1a; 在使用 ChatGPT 时&#xff0c;当你给的指令越精确&#xff0c;它的回答会越到位&#xff0c;举例来说&#xff0c;假如你要请它帮忙写文案&#x…

测算土地面积并导出的新方法

让每一个人&#xff0c;都有自己的地图&#xff01; 我们在《如何测量显示多个距离和面积》一文中分享过测量距离和面积的方法&#xff0c;随着最近新版本的上线&#xff0c;该功能又有了新方法。 这里以测算土地面积并导出为例&#xff0c;分享这个新版本中的面积测量与导出…

某年某月第几天(模拟)

时间模板传送带-> 题目描述 定义一个结构体变量&#xff08;包括年、月、日&#xff09;。计算该日在本年中是第几天&#xff0c;注意闰年问题。 输入格式 年月日 输出格式 当年第几天 样例输入 2000 12 31 样例输出 366 #include <iostream> using namespace s…

黑天鹅大事件发生后,财产如何不受损失,fpmarkets一招教你

众所周知一旦行业内发生黑天鹅后&#xff0c;所带来的影响可以颠覆整个行业&#xff0c;再加上爆发的瞬间性对我们危害更大。那么黑天鹅大事件发生后&#xff0c;财产如何不受损失&#xff0c;今天fpmarkets一招教你。 塔勒布在《黑天鹅:极不可能事件的影响》一书中写道&#x…

一条 SQL 更新语句如何执行的

Server 层 存储引擎层 总流程 查询语句 连接器 查询缓存 分析器 优化器 执行器 更新语句 redo log&#xff08;节省的是随机写磁盘的 IO 消耗&#xff08;转成顺序写&#x…

骨传导耳机领头羊——南卡在AWE2024展会上展现强大的创新实力

在2024年的AWE&#xff08;中国家电及消费电子博览会&#xff09;上&#xff0c;南卡凭借其尖端的骨传导耳机技术再次成为业界瞩目的中心。作为骨传导技术的先驱和领航者&#xff0c;南卡不仅展出了其最新的产品&#xff0c;更向世界宣布了其在开放式耳机市场的宏伟蓝图。 南卡…

java零基础入门-Map集合练习(上)

一、教学目标 能够使用HashMap集合实现值为双列集合存放。能够使用HashMap集合实现值为单列集合存放。能够使用HashMap集合实现值为基本数据类型存放。能够使用HashMap集合实现值为对象存放。... 二、HashMap实现自定义元素存放 1、值存放基本数据类型 像这中就非常简单了呀…

损失函数和反向传播

1. 损失函数的基础 import torch from torch.nn import L1Loss from torch import nninputs torch.tensor([1, 2, 3], dtypetorch.float32) targets torch.tensor([1, 2, 5], dtypetorch.float32)inputs torch.reshape(inputs, (1, 1, 1, 3)) targets torch.reshape(targe…

迄今为止易用 —— 的 “盲水印“ 实现方案

前期回顾 网站的打赏 —— 新一代的思路-CSDN博客https://blog.csdn.net/m0_57904695/article/details/136704914?spm1001.2014.3001.5501 目录 CSDN 彩色之外 &#x1f4dd; 前言&#xff1a; &#x1f6e0;️ vue3-blind-watermark &#x1f916; 安装 ♻️ 引入&am…