jenkins项目部署
2022年2月18日
jenkins项目部署
前置准备
- 打包类型
- java后端打包
- vue前端打包
- jenkins插件
- git
- Jenkins-Maven(可选)
- 打包需求环境
- Java
- Maven
- Nodejs
- Nginx
- Git
java打包配置
创建构建任务
选择任务模板和输入任务名称
此处可以直接选择默认模板或者使用maven插件提供的模板
输入任务描述
选择定时清除构建记录
git拉取代码设置
设置代码变更自动构建
生成token
gitlab webhooks设置
添加杀死旧服务shell构建步骤
port='端口'
pid=`lsof -i :$port|grep -v "PID" | awk '{print $2}'`
echo $pid
if [ "$pid" != "" ];
then
kill -9 $pid
echo "成功杀死端口$port pid:$pid"
else
echo "$port端口未被占用"
fi
添加maven打包命令shell构建步骤
# -Dmaven.test.skip=true属性打包时跳过单元测试
mvn install -Dmaven.test.skip=true
mvn clean package -Dmaven.test.skip=true
添加启动命令步骤
LD_BUILD_ID=$BUILD_ID
echo $OLD_BUILD_ID
BUILD_ID=dontKillMe
# -Dspring.profiles.active属性可以选择配置文件启动
java -jar -Dspring.profiles.active=test jar包路径.jar > 日志路径.log 2>&1 &
BUILD_ID=$OLD_BUILD_ID
echo $BUILD_ID
vue打包配置
配置项与java程序的步骤基本一致,唯一的差别就在后面的shell打包和部署命令不同
添加前端打包shell步骤
添加node打包命令shell构建步骤
npm install
npm run build:prod
添加删除旧前端文件shell构建步骤
rm -rf /nginx配置web服务目录/*
添加复制新文件移动到nginx配置目录
cp -r /前端项目目录/dist/* /nginx配置web服务目录