Linux下的Jenkins安装教程

2023-11-11

当前环境

  • CentOS 7.8
  • Java 11(注意当前jenkins支持的Java版本最低为Java11)
  • FinalShell 3.9(操作环境)

安装Jenkins

PS:不建议使用Docker安装Jenkins,因为使用Jenkins的时候一般会调用外部程序,比如Maven、Docker、JDK、Nodejs等,所以我们最好直接安装在本机上,以避免不必要的麻烦。

1. 添加Jenkins源

执行下面两条命令:

  1. sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo --no-check-certificate
  2. sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

image-20220629012351686

2. 通过yum安装Jenkins

  • yum -y install jenkins

image-20220629012503689

image-20220629012527934

3. 修改Jenkins端口号

  1. Jenkins默认端口号为8080,输入vim /etc/sysconfig/jenkins进行编辑,将JENKINS_PORT修改为自己想要的端口号,前提得保证修改后的这个端口没有被其他的进程占用。

    在这里插入图片描述

  2. 这里修改了可能还不能生效,还需要修改另一个地方,输入以下指令进行编辑

    vim /usr/lib/systemd/system/jenkins.service
    
    # 找到下面的文字
    Environment="JENKINS_PORT=8080" # 修改为自己想要的端口号
    # :wq退出
    

    image-20220629013034526

  3. 修改完成后,重新加载配置文件,随后再重启Jenkins,此时的启动端口应该已经变成你修改的端口号了。

    # 重新加载配置文件
    systemctl daemon-reload
    # 重启jenkins
    systemctl restart jenkins
    

启动Jenkins

Jenkins可以单独指定Java路径,在/etc/init.d/jenkins文件内大概一百行左右的位置,在最上面加上你的java路径即可:
在这里插入图片描述

PS:当前Jenkins支持的最低Java版本为11,如果机器上只有Java8的朋友需要先安装Java11或以上版本。Linux下多版本Java建议通过系统自带的 alternatives 来管理,参考这篇文章外加自己琢磨搞定:linux alternatives命令详解 - lpfuture

  1. 输入service jenkins start,会弹出提示:Starting jenkins (via systemctl):,意思是正在启动,第一次启动比较耗时,此时耐心等待。如果提示超时失败,没关系,jenkins仍然在启动,只是第一次启动比较耗时。

    如果提示内容不是超时失败,那大概率是你的Java没安装好或者版本不对。

  2. 放行刚刚配置的端口

    # 放行15369端口
    firewall-cmd --zone=public --add-port=15369/tcp --permanent
    # 重新加载防火墙
    firewall-cmd --reload
    # 查看是否已经开启
    firewall-cmd --list-ports
    

    如果你是在阿里云腾讯云等类似服务器上的话,那你还需要去控制台防火墙或者安全组开放这个端口,像这样:

    image-20230109220942447

    开放端口时记得设置授权ip,建议你直接给自家ip地址授权全部端口号。

  3. 在浏览器输入ip+port,可以进入到Jenkins的初始化界面,第一次启动要等的比较久:

    进入这个界面,说明你的Jenkins已经在启动中了。

    image-20230109220426801

初始化配置Jenkins

  1. 系统启动完毕后,系统会提示你查看并输入管理员密码,根据中显示的密码位置,打开该文件并将密码复制粘贴即可:

    # 在服务器查看密码文件
    cat /var/lib/jenkins/secrets/initialAdminPassword
    

    image-20230110204746867

  2. 密码输入成功后,进入插件安装界面,如果你是新手,直接使用推荐安装的插件即可:

    image-20230110205548596

  3. 系统开始安装插件,需要等待系统安装完毕,这一步可能要比较久,耐心等待:

    image-20230110205656230

    安装过程中可能会出现部分插件安装失败的情况,没关系,全部处理完毕后可以选择重试。

  4. 安装完毕后,系统会提示你创建第一个管理员账户:

    image-20230110210608920

  5. 配置Jenkins访问地址,便于一些插件使用,一般会有默认值:

    image-20230110213650307

  6. 配置完成,点击开始使用Jenkins:

    image-20230110213728048

    随后就进入到Jenkins的管理界面了,不同版本的Jenkins界面可能会不一样:

    image-20230110213923363

至此,Jenkins安装完毕。

扩展

如果你是使用Jenkins来对Java服务做持续集成的话,那么你还需要安装下面的插件:

  • Maven Integration: Maven 集成管理插件。
  • Docker plugin: Docker集成插件。
  • Publish Over SSH:远程文件发布插件。
  • SSH: 远程脚本执行插件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux下的Jenkins安装教程 的相关文章

随机推荐

  • Unity3D+Vuforia实现AR效果的案例

    实验步骤 1 打开Unity3D 新建一个项目 下载链接 参考我另一篇文章 Unity3D Vuforia配置 2 导入 import Vuforia包 我这个版本自带Vuforia 如果导入下载的会有冲突 出错 直接按照下图导入 Game
  • QT随机生成验证码 四位数字并 禁止编辑的方法

    随机生成数字 int Widget generateRandomNumber qsrand QTime 0 0 0 secsTo QTime currentTime for int i 0 i lt 4 i int test qrand r
  • 转 C#中的override

    https zhidao baidu com question 446422940 html 要扩展或修改继承的方法 属性 索引器或事件的抽象实现或虚实现 必须使用 override 修饰符 override 方法提供从基类继承的成员的新实
  • Qt跨线程信号和槽的连接

    Qt支持三种类型的信号 槽连接 1 直接连接 当signal发射时 slot立即调用 此slot在发射signal的那个线程中被执行 不一定是接收对象生存的那个线程 2 队列连接 当控制权回到对象属于的那个线程的事件循环时 slot被调用
  • 压测以及python的自省

    经过两个季度的开发 数据库收敛的项目一期终于到了最后阶段 这周完成最后的功能测试之后即将部署到测试环境进行压测 并进行运维文档的完善 下午小组会上 heng哥分享了python类和自省机制的相关内容 他用了苏格拉底那句经典的 The une
  • Java多线程,Android多线程

    目录 一 线程的概念 二 线程创建的方式及特点 三 线程创建方式 1 继承Thread类 2 实现Runnable接口 3 实现Callable接口 我觉得了解即可 4 AsyncTask异步任务 被弃用 5 AsyncTask替代方案 四
  • 最全的计算机网络思维导图

    计算机网络思维导图 概述 应用层 传输层 网络层 链路层 物理层 概述 应用层 传输层 网络层 链路层 物理层
  • ASP.NET 2.0数据操作(一)

    创建数据访问层的过程 第一步 在网站中添加新项 数据集 Visual Studio会问我们是否将DataSet添加到App Code文件夹中 选择 Yes 第二步 向数据集中添加TableAdapter控件 完成上步后 Visual Stu
  • PPT添加页码

    点击 插入 点击 幻灯片编号 点击 幻灯片编号 点击 全部应用 右下角出现编号
  • ue测试php,用户体验测试(UE测试)

    GO语言练习 channel 缓冲机制 1 代码 2 运行 3 解析 1 代码 buffer go package main import fmt time func readThre Web调试工具 Fiddler介绍 Fiddler 教
  • JDBC连接数据库案例

    基于 MySQL 8 0 3 JDK 1 8 数据库的创建 创建学生数据库 CREATE DATABASE Student 创建学生表 CREATE TABLE STU ID INT PRIMARY KEY AUTO INCREMENT N
  • 014.Solidity入门——01数据类型

    数据类型是编写智能合约的基础 Solidity支持多种数据类型 包括基本数据类型 数组 结构体 枚举 映射等 基本数据类型包括 bool 布尔型 true或false int uint 整型 可以表示正负整数 int 或非负整数 uint
  • Oracle获取字符串长度

    Oracle中常用的字符串长度获取方法 有两个 lengthb string 和length string b是byte字节的意思 其中 lengthb string 计算string所占的字节长度 返回字符串的长度 单位是字节 lengt
  • matlab求解全局最优(初步介绍)

    这里可以看到全局优化的一些经典算法举例 matlab两个工具箱的比较 最左上角是求解器的选项 可以在此选择不同的算法求解 不同的求解器需要输入的参数也各不相同
  • Udacity Deep Learning课程作业(六)

    来到课程最后一次小作业 训练完word2vec模型后 作业六基于Text8 zip语料训练一个LSTM模型 用perplexity评价训练得到语言模型的质量 越低越好 LSTM Problem 1 num nodes 64 graph tf
  • 【Untiy2D独立/合作开发】特别篇:如何实现快速丢掉物品

    学习目标 一天两更累的一批 那么今天就来实现如何快速丢掉物品而不是只能拖拽物品这样能快速处理背包物品 学习内容 首先先去EventHandler上新建一个事件 public static event Action DropItemSelec
  • 【unity3D】如何修改相机的默认视角

    未来的游戏开发程序媛 现在的努力学习菜鸡 本专栏是我关于游戏开发的学习笔记 本篇是unity的如何修改相机的默认视角 如何修改相机的默认视角 Game窗口运行的话视角是这样的 此时Scene窗口的视角是这样的 可以观察到人物变化 但是我现在
  • html select 添加js,封装html的select标签的js操作实例

    复制代码 代码如下 function BindSelect id dataList fieldtext fieldValue 绑定某一个数据源 fieldtext为需要绑定的文本字段 fieldValue为需要绑定的value字段 var
  • 【docx4j】docx4j操作docx,实现替换内容、转换pdf、html等操作

    主要是想要用此功插件操作docx 主要的操作就是操作段落等信息 另外 也想实现替换docx的内容 实现根据模板动态生成内容的效果 也想用此插件实现docx转换pdf word的格式其实可以用xml来表现 docx4j也应该是基于xml来操作
  • Linux下的Jenkins安装教程

    当前环境 CentOS 7 8 Java 11 注意当前jenkins支持的Java版本最低为Java11 FinalShell 3 9 操作环境 安装Jenkins PS 不建议使用Docker安装Jenkins 因为使用Jenkins的