在centOS Linux系统搭建自动化构建工具Jenkins

前言

在工作中发现公司使用Jenkins实现自动化部署项目方案,于是闲着自己也捣鼓一下,网上查阅相关部署资料,顺便记录操作步骤,所以有了下面这篇的文章。

部署完之后,安装前端项目所需环境,比如node环境,配置shell命令与对接Gitee(码云)上个人的项目相关联(其实就是配置我们平时安装依赖、打包、打包完成后,把项目移动到你的服务器指定的某个目录。从而实现自动部署),进行一键自动化部署时,发现服务器CPU直接干掉100%,直接宕机了😅,我的小服务器根本玩不起这玩意,等后续有钱升级服务器再玩吧😅

一、安装Jenkins运行所需要的环境-- jdk 和 maven

关于:Jenkins用Java语言编写,是基于Java开发的一种持续集成工具,用于监控持续重复的工作。

下载jdk(jdk建议1.8以上) 和 maven,并上传到你的服务器目录(哪个目录都行,配置系统变量路径不要配错就行),并配置系统变量

配置系统maven环境(类似window系统变量配置)

使用vi命令进入ect/profile配置

vi /etc/profile

写入如下路径(/usr/apache-maven-3.8.6你的maven存放路径)

export MAVEN_HOME=/usr/apache-maven-3.8.6
export PATH=$MAVEN_HOME/bin:$PATH

jdk系统变量配置同理

1 export JAVA_HOME=/usr/java/jdk1.8.0_131
2 export JRE_HOME=${JAVA_HOME}/jre
3 export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
4 export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
5 export PATH=$PATH:${JAVA_PATH}

环境变量配置完毕后,保存退出,执行如下命令让其生效

重新加载配置命令

source /etc/profile

输入命令检查jdk和maven是否安装成功

java检查命令

java

出现如下证明成功

maven 检查命令

maven -v

出现如下证明成功

二、安装jenkins并安装

jenkins的rpm/war包下载地址

地址:Jenkins mirrors,打开链接后,首行是系统版本名称,Releases行是短期更新包,LTS是长期更新包。

我们选择war包,点击进入选择一个版本下载,版本越高,对应的jdk也要越高

下载成功后Jenkins.war

运行刚才下载的jenkins.war

运行默认是8080端口

[root@localhost ~]# java -jar /usr/local/jenkins.war //默认端口8080
[root@localhost ~]# java -jar /usr/local/jenkins.war --httpPort=8888  //指定8888端口启动,防止被占用
[root@localhost ~]# nohup java -jar /usr/local/jenkins.war --httpPort=8888 & //后台启动

注意:/usr/local/jenkins.war 是你的Jenkins.war存放所在的路径

如果端口被防火墙阻挡可以执行以下命令关闭

stop firewalld 关闭防火墙

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl status firewalld //查看防火墙状态

浏览器访问:http://x.x.x.x:port

注意:x.x.x.x你的服务器ip,port:端口

在提示的文件找到对应的密码,填入

安装推荐的插件基本已经可以满足使用,你也可以选择自定义插件安装,下面我选择推荐安装

耐心等待插件安装完成…

你可以新创建一个管理员账户,也可以使用admin账户继续操作

最后点击保存并完成

开始使用jenkins

到此为止,jenkins就已经安装成功了

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

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

相关文章

Git下载安装(保姆教程)

目录 1、Git下载 2、Git安装(windows版) (1)启动安装程序 (2)阅读许可协议 (3)选择安装路径 (4)选择组件 (5)选择开始菜单文件夹…

深入理解嵌入式开发中的三个重要工具:零长度数组、container_of 和 typeof

在嵌入式开发中,内核开发者经常需要处理复杂的数据结构和动态内存分配。零长度数组、container_of 宏和 typeof 是内核开发中三个非常重要的工具,它们在结构体管理、内存操作和类型处理中发挥着关键作用。本文将详细探讨这三个工具的功能、应用场景及其在内核开发中的重要性。…

【react】react中的<></>和React Fragment的用法及区别详解

目录 1、<>是什么 2、为什么要使用<>&#xff1f; 3、如何使用<>&#xff1f; 基本用法 需要传递属性时&#xff08;如key&#xff09; 使用效果 注意事项 总结 4、React Fragment 与空标签&#xff08;<>&#xff09;详解 1. Fragment 的用…

【人工智能】使用Python实现时间序列异常检测:从基础到深度学习模型的全方位探索

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 时间序列异常检测是数据分析领域中的重要课题,广泛应用于金融、医疗、工业监控等多个行业。本篇文章深入探讨了时间序列异常检测的基本技术…

Keytool常见问题全解析:从环境配置到公钥提取

引言 在Android开发、跨平台应用构建&#xff08;如UniApp&#xff09;或服务端证书管理中&#xff0c;keytool 是一个不可或缺的工具。然而&#xff0c;许多开发者在使用 keytool 时&#xff0c;常因环境配置、路径权限、密码问题等导致操作失败。本文基于真实问题场景&#…

TSB - AD 解读 — 迈向可靠、透明的 TSAD 任务

目录 一 文章动机 二 TSAD 领域内的两类缺陷 三 数据集的构建 四 实验结果及结论 项目宣传链接&#xff1a;TSB-AD 代码链接&#xff1a; TheDatumOrg/TSB-AD: TSB-AD: Towards A Reliable Time-Series Anomaly Detection Benchmark 原作者解读&#xff1a;NeurIPS 2…

DNS主从服务器

1.1环境准备 作用系统IP主机名web 服务器redhat9.5192.168.33.8webDNS 主服务器redhat9.5192.168.33.18dns1DNS 从服务器redhat9.5192.168.33.28dns2客户端redhat9.5192.168.33.7client 1.2修改主机名和IP地址 web服务器 [rootweb-8 ~]# hostnamectl hostname web [rootweb-8…

遥感数据获取、处理、分析到模型搭建全流程学习!DeepSeek、Python、OpenCV驱动空天地遥感数据分析

【扔进数据&#xff0c;直接出结果】在科技飞速发展的时代&#xff0c;遥感数据的精准分析已经成为推动各行业智能决策的关键工具。从无人机监测农田到卫星数据支持气候研究&#xff0c;空天地遥感数据正以前所未有的方式为科研和商业带来深刻变革。然而&#xff0c;对于许多专…

第一个vue项目

项目目录 启动vue项目 npm run serve 1.vue.config.js文件 (CLI通过vue-cli-serve启动项目&#xff0c;解析配置配置文件vue-condig-js&#xff09; // vue.config.js //引入path板块&#xff0c;这是Node.js的一个内置模块&#xff0c;用于处理文件路径&#xff0c;这里引用…

QT中读取QSetting文件

1.ini文件的格式 头文件 #include <QSettings> #include <QStringList> #include <QtCore> #include <QDebug>2.读文件 //ini文件的读取 void iniTest::readIniFile(QString filePath) {//1.打开ini文件QSettings m_iniFile(filePath, QSettings::I…

卷积神经网络 - 一维卷积、二维卷积

卷积(Convolution)&#xff0c;也叫褶积&#xff0c;是分析数学中一种重要的运算。在信号处理或图像处理中&#xff0c;经常使用一维或二维卷积&#xff0c;本博文我们来学习一维卷积和二维卷积。 理解一维卷积和二维卷积的核心在于把握维度对特征提取方式的影响。我们从数学定…

java学习总结(六)Spring IOC

一、Spring框架介绍 Spring优点&#xff1a; 1、方便解耦&#xff0c;简化开发,IOC控制反转 Spring 就是一个大工厂&#xff0c;可以将所有对象创建和依赖关系维护交给Spring 2、AOP 编程的支持 Spring 提供面向切编程&#xff0c;可以方便的实现对序进行权限拦截、运监控等…

大模型推理:LM Studio在Mac上部署Deepseek-R1模型

LM Studio LM Studio是一款支持离线大模型部署的推理服务框架&#xff0c;提供了易用的大模型部署web框架&#xff0c;支持Linux、Mac、Windows等平台&#xff0c;并提供了OpenAI兼容的SDK接口&#xff0c;主要使用LLama.cpp和MLX推理后端&#xff0c;在Mac上部署时选择MLX推理…

AI技术学习笔记系列004:GPU常识

显卡架构是GPU设计的核心&#xff0c;不同厂商有其独特的架构演进。以下是主要厂商的显卡架构概述&#xff1a; 一、NVIDIA Tesla&#xff08;2006-2010&#xff09; 代表产品&#xff1a;GeForce 8000系列&#xff08;G80&#xff09;。特点&#xff1a;首款统一着色架构&…

实验- 分片上传 VS 直接上传

分片上传和直接上传是两种常见的文件上传方式。分片上传将文件分成多个小块&#xff0c;每次上传一个小块&#xff0c;可以并行处理多个分片&#xff0c;适用于大文件上传&#xff0c;减少了单个请求的大小&#xff0c;能有效避免因网络波动或上传中断导致的失败&#xff0c;并…

Android视频渲染SurfaceView强制全屏与原始比例切换

1.创建UI添加强制全屏与播放按钮 2.SurfaceView控件设置全屏显示 3.全屏点击事件处理实现 4.播放点击事件处理 5.使用接口更新强制全屏与原始比例文字 强制全屏/原始比例 点击实现

数据结构——串、数组和广义表

串、数组和广义表 1. 串 1.1 串的定义 串(string)是由零个或多个字符组成的有限序列。一般记为 S a 1 a 2 . . . a n ( n ≥ 0 ) Sa_1a_2...a_n(n\geq0) Sa1​a2​...an​(n≥0) 其中&#xff0c;S是串名&#xff0c;单引号括起来的字符序列是串的值&#xff0c; a i a_i a…

无再暴露源站!群联AI云防护IP隐匿方案+防绕过实战

一、IP隐藏的核心原理 群联AI云防护通过三层架构实现源站IP深度隐藏&#xff1a; 流量入口层&#xff1a;用户访问域名解析至高防CNAME节点&#xff08;如ai-protect.example.com&#xff09;智能调度层&#xff1a;基于AI模型动态分配清洗节点&#xff0c;实时更新节点IP池回…

1.5.3 掌握Scala内建控制结构 - for循环

Scala的for循环功能强大&#xff0c;支持单重和嵌套循环。单重for循环语法为for (变量 <- 集合或数组 (条件)) {语句组}&#xff0c;可选筛选条件&#xff0c;循环变量依次取集合值。支持多种任务&#xff0c;如输出指定范围整数&#xff08;使用Range、to、until&#xff0…

【MySQL基础-9】深入理解MySQL中的聚合函数

在数据库操作中&#xff0c;聚合函数是一类非常重要的函数&#xff0c;它们用于对一组值执行计算并返回单个值。MySQL提供了多种聚合函数&#xff0c;如COUNT、SUM、AVG、MIN和MAX等。这些函数在数据分析和报表生成中扮演着关键角色。本文将深入探讨这些聚合函数的使用方法、注…