当前位置: 首页 > 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.lryc.cn/news/584425.html

相关文章:

  • 百度文心ERNIE4.5部署与性能白皮书:FastDeploy加速方案+全系列模型实测数据对比
  • Shader面试题100道之(61-80)
  • Django--01基本请求与响应流程
  • 个体户核定多地暂停,将不再享受核定征收?
  • 二分查找篇——搜索旋转排序数组【LeetCode】两次二分查找
  • 专题:2025供应链数智化与效率提升报告|附100+份报告PDF、原数据表汇总下载
  • 2025企业私有化知识库工具选型指南——标普智元深度解读
  • 多商户商城系统源码选型指南:开源 vs 定制,哪种更适合?
  • 第七讲:C++中的string类
  • [实战]调频(FM)和调幅(AM)信号生成(完整C语言实现)
  • java多线程环境下资源隔离机制ThreadLocal详解
  • 【C++】红黑树的底层思想 and 大厂面试常问
  • Web前端:table标签的用法与属性
  • 学习日记-spring-day45-7.10
  • 二分查找篇——搜索旋转排序数组【LeetCode】一次二分查找
  • LFU 缓存
  • iOS APP混合开发性能测试怎么做?页面卡顿、通信异常的工具组合实战
  • iOS Widget 开发-7:TimelineProvider 机制全解析:构建未来时间线
  • 快速上手ASP .NET Core 8与MongoDB整合
  • Mac 电脑crontab执行定时任务【Python 实战】
  • 【保姆级喂饭教程】idea中安装Conventional Commit插件
  • Wsl/InstallDistro/Service/RegisterDistro/CreateVm/HCS/E_INVALIDARG
  • Android ViewBinding 使用与封装教程​​
  • Flutter 与 Android 的互通几种方式
  • 第35周—————糖尿病预测模型优化探索
  • 灰度发布过程中的异常处理
  • frp内网穿透下创建FTP(解决FTP“服务器回应不可路由的地址。使用服务器地址替代”错误)
  • Vue响应式原理五:响应式-自动收集依赖
  • 【Action帧简要分析】
  • 实验作业1+整理笔记截图