Linux下Jenkins服务搭建及配置

news/2024/4/30 4:25:26/文章来源:https://blog.csdn.net/code_lyb/article/details/127986315

一、简介

        Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,为软件的持续集成提供了一种便捷的方式。

二、Jenkins自动化部署实现原理

        Jenkins的自动化部署实现原理如下图所示:

三、安装Jenkins

        前面讲过Jenkins是基于Java开发的持续集成工具,因此需要先搭建JDK环境。

3.1、搭建java环境

        通过如下命令搭建JDK环境:

sudo apt update
sudo apt install openjdk-11-jre

        执行命令后会有如下输出:

         输入Y以继续搭建JDK环境:

         通过如下命令来确认JDK环境是否搭建完成:

java -version

        执行命令会有如下输出:

         至此,JDK环境搭建完成。

3.2、安装Jenkins

3.2.1、安装curl

        执行如下命令来安装curl:

sudo snap install curl

        执行命令会有如下信息输出:

3.2.2、导入Jenkins秘钥

        通过如下命令导入秘钥:

curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee \/usr/share/keyrings/jenkins-keyring.asc > /dev/null

        执行如上命令不会有任何信息输出。

3.2.3、添加Jenkins apt存储库条目

        执行如下命令来添加Jenkins apt存储库条目:

echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \https://pkg.jenkins.io/debian-stable binary/ | sudo tee \/etc/apt/sources.list.d/jenkins.list > /dev/null

3.2.4、安装Jenkins

        通过如下命令来安装Jenkins:

sudo apt-get update
sudo apt-get install jenkins

        执行sudo apt-get update会有如下信息输出:

        执行sudo apt-get install jenkins命令会有如下信息输出:

四、配置Jenkins

4.1、启动Jenkins服务

        先通过sudo service jenkins status命令查看当前Jenkins服务状态。执行命令输出如下信息:

        通过如上信息可知当前Jenkins服务已启动,如果Jenkins未启动则通过sudo service jenkins start命令启动。

4.2、修改Jenkins监听端口

        Jenkins默认监听端口是8080,如果修改请修改/lib/systemd/system/jenkins.service文件中的Environment="JENKINS_PORT=8080"字段。比如修改为Environment="JENKINS_PORT=8081"

4.3、配置Jenkins自启动

        执行如下命令可实现服务器启动后Jenkins服务自启动:

sudo systemctl enable jenkins

4.4、配置Jenkins域名
        TODO

4.5、登陆

        以上配置完成之后一定要执行如下命令重启Jenkins服务,使得如上配置生效!!!

systemctl daemon-reload
sudo service jenkins restart

        通过网页打开Jenkins页面,http://域名或者IP:端口号的方式。

         根据提示获取初始密码进行登陆。此处初始密码存放在/var/lib/jenkins/secrets/initialAdminPassword文件中。

        新手直接选择安装推荐的插件即可。

        单击进入后会出现如下界面,表示自动开始安装所有推荐的插件,等待后续即可

         界面右侧是安装的列表及当前插件安装进展。

4.6、添加用户

        插件安装完成之后开始创建管理员用户

         创建完成之后成功登陆进去:

 

 

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

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

相关文章

map容器(20221125)

一、map/multimap容器 1、map基本概念 map中所有元素都是pair; pair第一个元素为key(键值),起到索引的作用,第二个元素为value(实值); 所有元素会根据元素的键值(key)自动排序。 map/multi…

【自学前端】HTML篇已完结(附14节视频)

I have a dream,Front end development will not require additional training. 目录 内容预览 通过这里找视频: 1、内容仍然有所欠缺 2、目前以0基础再实战为主 3、目前未包含面试题 4、下一步的计划 5、希望收到反馈 内容预览 △ 目前纯HTML篇课程已经完成…

[足式机器人]Part3机构运动微分几何学分析与综合Ch02-2 平面机构离散运动鞍点综合——【读书笔记】

本文仅供学习使用 本文参考: 《机构运动微分几何学分析与综合》-王德伦、汪伟 《微分几何》吴大任 Ch02-2 平面机构离散运动鞍点综合2.3 鞍点圆2.3.1 鞍圆与二副连架杆R-R2.3.2 鞍圆误差2.3.3 四位置鞍圆2.3.4 五位置鞍圆2.3.5 多位置鞍圆2.3 鞍点圆 平面连杆机构中…

第五站:操作符(第二幕)

在前面的文章中我们详细讲解了操作符的一些内容, 今天我们来继续了解操作符剩余的内容 操作符第一幕的传送门在这:第五站:操作符(第一幕) 目录 七、关系操作符 八、逻辑操作符 1.基础知识 2.几道经典的题目 九、条…

手摸手教会你在idea中配置Tomcat进行servlet/jsp开发(多图超详)

1. 下载安装idea,创建project,如果没有JDK可以通过idea指定文件夹并下载JDK。工程就是普通的Java工程,名字为webdemo 2.因为是Web项目,所以要对这个普通的项目进行WEB扶持^^,在项目名称webdemo上右键单间选择菜单项&qu…

20221125使用PR2023自动识别obs-studio录屏生成的MKV视频的字幕

20221125使用PR2023自动识别obs-studio录屏生成的MKV视频的字幕 2022/11/25 19:07 01 obs.png obs studio (64bit) 02 obs 设置.png 03 obs 输出.png 04 obs默认为MKV.png 05 obs改mkv为MP4.png 警告:如果文件无法完成(例如&…

嵌入式驱动初级-阻塞与非阻塞

文章目录前言一、五种IO模型二、阻塞与非阻塞三、多路复用前言 记录嵌入式驱动学习笔记 一、五种IO模型 当应用程序对设备驱动进行操作的时候,如果不能获取到设备资源,那么阻塞式 IO 就会将应用程 序对应的线程挂起,直到设备资源可以获取为止…

b站黑马JavaScript的Ajax案例代码——图书管理案例

目录 目标效果: 重点原理: 1.js数组操作中push方法 2.jquery中append方法 3.js数组操作中join方法 4.jQuery中attr方法 5.jQuery中trim方法 代码部分: 1. 图书管理案例.html(js部分全是重点,html部分用于看结构) 2.jquery.js…

mybatis复习05,mybatis的缓存机制(一级缓存和二级缓存及第三方缓存)

mybatis复习05,mybatis的缓存机制(一级缓存和二级缓存)MyBatis的缓存机制MyBatis的一级缓存MyBatis的二级缓存二级缓存的相关配置MyBatis缓存查询的顺序整合第三方缓存EHCacheEHCache配置文件说明:MyBatis的缓存机制 MyBatis作为持久化框架&…

什么是DCS系统?DCS和SCADA的区别

如果你在工业自动化的企业环境中操作,可能听说过分布式控制系统 (DCS) 和监控和数据采集 (SCADA) 系统。 DCS系统和SCADA系统有很多共同点,因为它们都被称为受控计算机系统,接收和评估合法数据以实现远程访问监控和管理。 DCS(分布式控制系…

Flutter 中使用 extension 使项目更具可读性和效率 01

Flutter 中使用 extension 使项目更具可读性和效率 01 原文 https://medium.com/bedirhanssaglam/make-your-flutter-projects-more-readable-and-effective-with-extensions-b7dffd32e2f4 前言 代码的可读性和实用性在《 Flutter 》中非常重要。今天我们将编写一些 extension …

体系结构27_多处理机(1)

单处理机的发展正在走向尽头? 并行处理机在未来将会发挥更大的作用。 1.获得超过单处理器的性能,最直接的方法就是把多个处理器连在一起。 2.自1985年以来,体系结构的改进使性能迅速提高,这种改进的速度能否持续下去还不清楚&a…

信号类型(雷达)——雷达波形认识(一)

系列文章目录 《信号类型(雷达通信)》 文章目录 前言 简述 总结 前言 本文将结合个人研究经验,从雷达波形简单谈谈我对雷达的认识。之后将对常见的雷达波形进行简单分析。 简述 雷达的波形决定了信号处理的手段以及对应的雷达功能&#x…

体系结构29_多处理机的互联网络

互连网络是将集中式系统或分布式系统中的结点连接起来所构成的网络,这些结点可能是处理器、存储模块或者其它设备,它们通过互连网络进行信息交换。在拓扑上,互连网络为输入和输出两组结点之间提供一组互连或映象(mapping&#xff…

【Linux】进程创建/终止/等待/替换

目录 一、子进程的创建 1、fork函数的概念 2、如何理解fork拥有两个返回值 3、fork调用失败的场景 二、进程的终止 1、main函数返回值 1.1main函数的返回值的意义 1.2将错误码转化为错误信息 1.3查看进程的退出码 2、进程退出的情况 1、进程的正常退出与异常退出 2…

Nodejs中包的介绍及npm安装依赖包的多种方法

文章目录1 包的介绍1.1 什么是包1.2 包的来源1.3 为什么需要包1.4 从哪里下载包1.5 如何下载包2 npm2.1 npm安装依赖包2.2 装包后多了哪些文件2.3 安装指定版本的包1 包的介绍 1.1 什么是包 Nodejs中的第三方模块又叫做包 就像电脑和计算机指的是相同的东西,第三…

推特自动发帖,全天占据核心流量

利用热门趋势和Hashtags标签 Twitter有一个热门趋势,跟微博热搜是差不多的,卖家可以多关注一下热门趋势,看看有没有和产品相关的内容。在帖子中加入趋势性和热门的标签,是一种非常好的营销方式。 这一方面能够增加推文的热度&am…

android源码-ContentProvider实现原理分析

前言: 最初的目的是想研究下ContentProvider产生ANR原因的,但是如果要讲ANR的原因,那么必须要了解ContentProvider的完整实现原理,所以本篇就先讲一下ContentProvider的实现原理,下一篇再去讲ANR的原因。 本篇主要会讲…

Baklib知识库|为什么知识共享工具对减少内部知识缺口至关重要

你的企业是否存在知识缺口? 知识缺口——没有对关键知识进行研究和记录,以有效地传播信息,并教育企业内外的用户——可能是寻求生产率最大化并最终实现利润增长的公司的一个关键缺陷。知识(或数据、关键信息等)是你的…

网络通信基本原理

通讯的必要条件 主机之间需要有传输介质。光纤、蓝牙、wify主机上必须有网卡设备。把二进制信息转为高低电压的过程就是数据的调制过程。把电信号转为二进制信息的过程为解调制。主机之间需要协商网络速率。 网路的通讯方式 日常生活中,我们通讯的方式不可能只有…