当前位置: 首页 > news >正文

centos7 安装jenkins

文章目录

  • 前言
  • 一、pandas是什么?
  • 二、安装依赖环境
    • 1.前提准备
    • 2.安装git
    • 3.安装jdk,以及jdk版本选择
    • 4.安装maven
    • 5.安装NodeJS
    • 6.验证
  • 三、安装Jenkins
  • 四、验证Jenkins
  • 总结


前言

正在学习jenkins+docker部署前后端分离项目,安装jenkins的时候遇到了一些问题,本着安装步骤重新做一下记录。


一、pandas是什么?

Jenkins 是一个开源的、基于 Java 开发的 持续集成和持续交付 (CI/CD) 工具。它的核心使命是自动化软件开发过程中的构建、测试和部署阶段,从而显著提高开发效率、软件质量和发布速度。

二、安装依赖环境

1.前提准备

提前准备好了centos7环境,网络配置成功,能够正常ping通百度。

2.安装git

输入命令

yum install -y git

3.安装jdk,以及jdk版本选择

这里jdk使用21,因为之前我用的是openjdk8,安装完以后,到jenkins找到匹配的版本是2.346.1版本
在这里插入图片描述
安装完jenkins后初始化时候插件无法下载,
问题排查一:根据日志排查发现是因为清华源开源网络禁用问题。
请求镜像源网页出现提示:我们检测到您所在的子网和/或所使用的客户端存在大量下载某些较大二进制文件的行为,为保证用户的正常使用,我们阻断了此类请求。
解决方法就是切换网络,或者使用手机热点。
切换了手机热点以后,下载插件依旧失败,
问题排查二:根据查询问题,进行镜像源的切换,进入到Jenkins > Manage Jenkins > Plugin Manager、点击Advanced页面替换Update Site的url、并submit
在这里插入图片描述
切换为了华为镜像源,下载还是失败。
问题排查三:至此我就不打算解决插件下载问题了,直接使用,有些地方没有插件无法正常使用,比如git插件,没有的话无法配置远程代码仓库。最终我只能放弃jdk8安装了jdk21安装最新版本的jenkins。具体原因到安装jenkins时介绍。
jdk21下载命令如下:

wget https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz -P /opt/software

下载成功后通过命令解压

tar -zxvf /opt/software/jdk-21_linux-x64_bin.tar.gz

配置环境变量

vi /etc/profile

到最下面将jdk环境变量配置粘贴到最后一行,注意地址。

export JAVA_HOME=/opt/software/jdk-21.0.7
export PATH=$JAVA_HOME/bin:$PATH

执行命令使环境变量生效

source /etc/profile

4.安装maven

通过命令下载maven

wget https://mirrors.bfsu.edu.cn/apache/maven/maven-3/3.8.9/binaries/apache-maven-3.8.9-bin.tar.gz

解压maven

tar -zxvf apache-maven-3.8.8-bin.tar.gz

配置maven环境变量

vi /etc/profile

将以下配置粘贴到最后一行,注意maven地址

MAVEN_HOME=/home/soft/maven/apache-maven-3.8.8
PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
export MAVEN_HOME PATH

执行命令使环境变量生效

source /etc/profile

修改maven配置,注意地址

vi /home/soft/maven/apache-maven-3.8.9/conf/settings.xml

修改本地仓库位置,找到localRepository标签修改内容

<localRepository>/home/soft/maven/repository</localRepository>

配置阿里云镜像加速粘贴到mirrors标签中,将原来的配置注释掉

    <!-- 国内中央仓库的配置-阿里云中央仓库 --><mirror><id>nexus-aliyun</id><mirrorOf>central</mirrorOf><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public</url></mirror>

5.安装NodeJS

下载NodeJS

wget https://nodejs.org/dist/v12.18.3/node-v12.18.3-linux-x64.tar.xz

解压

tar -xvf node-v12.18.3-linux-x64.tar.xz

配置环境变量

vi /etc/profile

将以下内容粘贴到最后一行,注意地址

NODEJS_HOME=/home/soft/node-v12.18.3-linux-x64
PATH=$PATH:$NODEJS_HOME/bin
export NODEJS_HOME PATH

执行命令使环境变量生效

source /etc/profile

6.验证

输入以下命令验证安装的所需环境是否成功

java -version
git --version
mvn -v
node -v
npm -v

如下输出对应的版本信息即为成功。
在这里插入图片描述

三、安装Jenkins

https://pkg.jenkins.io/redhat-stable/ 到此网页下查看对应jenkins 和jdk的版本
在这里插入图片描述
https://mirrors.jenkins.io/war-stable/下载对应版本的jenkins
在这里插入图片描述
因为我们使用的时jdk21所以就下载最新的2.479.1点击下载war包即可
在这里插入图片描述
将war包上传到服务器对应的路径下
在war包路径下新建jenkins.sh

vi jenkins.sh
#!/bin/bash# 检查参数个数
if [ "${#}" -lt 1 ]; thenecho "\033[41;37m 脚本使用示例: sh jenkins.sh start(运行)|stop(停止)|restart(重启)  \033[0m"exit
fi# SOFT_DIR='/home/soft'# 获取脚本第一个参数
APP_OPT=${1}
# 端口
APP_PORT=10000
# 名称
APP_NAME=jenkins
# jar名 | war名
APP_JAR=${APP_NAME}.war
# 程序根目录
APP_JAR_HOME=.
# 日志名
APP_LOG_NAME=jenkins
# 日志根目录
APP_LOG_HOME=.
# 程序运行参数
JAVA_OPTS="--httpPort=${APP_PORT} --prefix=/jenkins"echo "本次操作服务名:[${APP_NAME}]"
echo "本次操作选择:[${APP_OPT}]"# 停止
function stop(){echo "<-------------------------------------->"echo "[${APP_NAME}] ... stop ..."# 查看该jar进程pid=`ps -ef | grep ${APP_JAR} | grep -v 'grep' | awk '{print $2}'`echo "[${APP_NAME}] pid="${pid}# 存在则kill,不存在打印一下吧if [ "${pid}" ]; thenkill -9 ${pid}# 检查kill是否成功if [ "$?" -eq 0 ]; thenecho "[${APP_NAME}] stop success"elseecho "[${APP_NAME}] stop fail"fielseecho "[${APP_NAME}] 进程不存在"fi
}# 运行
function start(){echo "<-------------------------------------->"echo "[${APP_NAME}] ... start ..."cd ${APP_JAR_HOME}echo "当前路径:`pwd`"# 赋予可读可写可执行权限chmod 777 ${APP_JAR}echo "启动命令: nohup java -jar ${APP_JAR} ${JAVA_OPTS} >> ${APP_LOG_HOME}/${APP_NAME}.log 2>&1 &"nohup java -jar ${APP_JAR} ${JAVA_OPTS} >> ${APP_LOG_HOME}/${APP_NAME}.log 2>&1 &if [ "$?" -eq 0 ]; thenecho "[${APP_NAME}] start success"elseecho "[${APP_NAME}] start fail"fi
}# 重启
function restart(){echo "<-------------------------------------->"echo "[${APP_NAME}] ... restart ..."stopstart
}# 多分支条件判断执行参数
case "${APP_OPT}" in"stop")stop;;"start")start;;"restart")restart;;*)echo "\033[41;37m 提示:不支持参数 命令 -> ${APP_OPT} \033[0m";;
esac

保存文件通过sh jenkins.sh start命令启动jenkins
然后通过浏览器访问IP:10000/jenkins/等待初始化,
在这里插入图片描述
安装推荐插件等待安装完成
在这里插入图片描述
用户默认使用admin即可,默认密码即为上面解锁的密码,登录成功以后可在用户管理中修改,路径jenkins->manage->securityRealm
在这里插入图片描述
在这里插入图片描述

四、验证Jenkins

点击新建任务
在这里插入图片描述
输入任务名称,创建自由风格软件
在这里插入图片描述
构建步骤这里选择执行shell
在这里插入图片描述
输入shell命令
在这里插入图片描述

java -version
git --version
mvn -v
node -v
npm -v

点击保存即可
然后点击立即构建
在这里插入图片描述
点击查看控制台输出
在这里插入图片描述
在这里插入图片描述


总结

以上就是今天要讲的内容,本文仅仅简单介绍了jenkins的安装和验证。

http://www.xdnf.cn/news/1097083.html

相关文章:

  • 【Python】基于Python提取图片验证码
  • Linux面试问题-软件测试
  • Uniapp中的uni.scss
  • JavaScript
  • 2025.07.09华为机考真题解析-第一题100分
  • 快速合并多个CAD图形为单一PDF文档的方法
  • MinerU将PDF转成md文件,并分拣图片
  • UEditor 对接 秀米 手机编辑器流程与问题
  • LVGL学习笔记-----进度条控件(lv_bar)
  • [特殊字符] LLM(大型语言模型):智能时代的语言引擎与通用推理基座
  • WWDC 25 风云再起:SwiftUI 7 Charts 心法从 2D 到 3D 的华丽蜕变
  • 【AI智能体】智能音视频-通过关键词打断语音对话
  • 《【第八篇-图片总结篇】Python图片处理自动化:终极工厂!从裁剪压缩到智能加水印,打造你的视觉内容生产流水线!》
  • 华为昇腾NPU与NVIDIA CUDA生态兼容层开发实录:手写算子自动转换工具链(AST级代码迁移方案)
  • 盲盒一番赏小程序技术实现方案:高并发与防作弊的平衡之道
  • IoT 小程序:如何破解设备互联的碎片化困局?
  • vue引入应用通义AI大模型-(一)前期准备整理思路
  • frp内网穿透下创建FTP(解决FTP“服务器回应不可路由的地址。使用服务器地址替代”错误)
  • QT解析文本框数据——详解
  • 使用球体模型模拟相机成像:地面与天空的可见性判断与纹理映射
  • 将Uri转为文件路径
  • 【牛客刷题】活动安排
  • Linux流量分析:tcpdump wireshark
  • G5打卡——Pix2Pix算法
  • 【PTA数据结构 | C语言版】顺序队列的3个操作
  • 【会员专享数据】2013-2024年我国省市县三级逐年SO₂数值数据(Shp/Excel格式)
  • [论文阅读]LLMZip: Lossless Text Compression using Large Language Models
  • 【C++详解】STL-list模拟实现(深度剖析list迭代器,类模板未实例化取嵌套类型问题)
  • 文心一言4.5开源部署指南及文学领域测评
  • 【音视频】HTTP协议介绍