Linux安装Jenkins
前置条件
- Java环境:JDK配置
- 打包构建工具安装(视自己实际情况配置):
- 后端:Gradle
- 后端:Maven
- 前端:node.js(参考链接)
Jenkins下载
下载地址:https://www.jenkins.io/download/这里是通过war包直接运行,下载最新版本即可
运行
这里用xftp通过Sftp连接远程将下载好的jenkins.war包放在linux的某个文件夹下面
我是在 /usr/local 下新建一个jenkins 文件夹存放jenkins.war
下面使用nohup命令方式启动war包,在后台运行,日志重定向打在run.log 文件里面,&是后台运行的意思
后台运行Jenkins
# nohup英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。
# 2>&1 解释:将标准错误 2 重定向到标准输出 &1 ,标准输出 &1 再被重定向输入到 run.log 文件中。
# & 让命令在后台执行,终端退出后命令仍旧执行。
nohup java -jar jenkins.war > run.log 2>&1 &
查看Jenkins初始密码填入下框
cat /var/lib/jenkins/secrets/initialAdminPassword
输入服务器IP地址访问端口8080进入以下界面
(注意检查服务器防火墙是否开放了8080端口,如果访问不到去开启防火墙的8080端口试试)
选择安装推荐的插件
其他常用的插件,在项目部署时会用到的
全局工具配置(路径:Dashboart->系统管理->全局工具配置)
1.Maven
2.Java JDK
在linux可以在 ‘/etc/profile’ 文件查看JAVA_HOME
3.Git
Gradle
Node
第一个Java项目
新建Item
选择自由风格->确定
General
- 描述:填写你这个项目的用途
- 勾选参数化构建过程->Git参数(这里要安装 Git Parameter Plug-In 插件才会有这个选项)
得到的效果是这样的:
General可以根据自己的习惯添加参数化构建过程,本文用的是git branch,设置完这些就可以了
源码管理
构建触发器
这里我后面用的是脚本,身份验证令牌随便填的
构建环境
没什么要选的,保持原样即可
构建
- 这里我用的是Gradle7.4.2:在你的目标服务器需要安装gradle,并且在全局工具配置,这里就可以直接选你配置的那个版本
构建后操作
在这里有一个需要注意的地方,当目标部署服务器配置了远程文件夹时,当前SSH Publishers设置的远程文件夹是用服务器的加上当前配置的地址
比如:SSH Server配置了远程文件夹是P0,当前构建后操作下的远程文件夹是P1,那么部署到远程的文件夹就是P0+P1
# 进入远程需要执行的脚本的目录
cd /home/user/server/scripts
# 停止正在运行的服务
./stop.sh
# 启动服务
./start.sh
.stop.sh
#!/bin/bash
echo "Stop Procedure : Tms-0.0.1-SNAPSHOT.jar"
pid=`ps -ef |grep java|grep Tms-0.0.1-SNAPSHOT.jar|awk '{print $2}'`
echo 'old Procedure pid:'$pid
if [ -n "$pid" ]
then
kill -9 $pid
fi
.start.sh
#!/bin/bash
#export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-4.el8_5.x86_64/bin/java
#echo ${JAVA_HOME}
echo 'Start the program : Tms-0.0.1-SNAPSHOT.jar'
chmod 777 /home/user/server
echo '-------Starting-------'
cd /home/user/server
chmod +x Tms-0.0.1-SNAPSHOT.jar
chmod +x /usr/lib/jvm/java-11-openjdk-11.0.13.0.8-4.el8_5.x86_64/bin/java
nohup java -jar Tms-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod > run.log 2>&1 &
echo 'start success'
Build with Parameters:启动项目
成功完结,撒花!
第一个Vue项目
项目初始化
- 同上面Java项目新建完Item之后的构建环境步骤开始,前面都一样
构建环境
构建
#!/bin/bash
#下载工作区npm包
node -v
npm -version
#给npm命令赋予root命令执行权(不然会报没有权限的错误,npm会用一个默认的没权限nobody用户去执行)
npm install --unsafe-perm=true --allow-root
#删除dist目录下的所有文件,dist目录即为当前jenkins工作区打包后的文件。
rm -rf ./dist/*
#执行打包命令
npm run build
#删除服务器上/root/ghyExploit/vue/saltpan/目录下的所有文件/root/ghyExploit/vue/saltpan/ 为服务器项目放置位置
rm -rf /home/user/server/dist/*
#把当前构建工作区dist目录里的文件 copy 到服务器/root/ghyExploit/vue/saltpan 文件夹下
cp -rf ./dist/* /home/user/server/dist/
启动项目
完结撒花!