Jenkins自动部署搭建
环境:前端Vue 后端java SpringBoot
最终效果:前后端Git提交代码到码云之后,Jenkins自动从码云拉代码,然后编译打包部署
Jenkins安装
Jenkins插件安装
Jenkins环境配置
Jenkins项目新建
Jenkins前端项目部署配置
Jenkins后端项目部署配置
附上编译打包部署的shell
appId=`jps -l | grep tms-app | awk '{print $1}'`
if [ -n "$appId" ]; then
echo $appId“ to be killing。。。”
kill $appId
fi
rm -f /usr/tms/app/tms-app.jar
cp target/tms-app.jar /usr/tms/app
cd /usr/tms/app/
echo "execute...."
BUILD_ID=dontKillMe
nohup java -Xms1280m -Xmx2560m -jar tms-app.jar >> /usr/tms/app/null &
echo "start success!!!"
#!/bin/bash
appId=`jps -l | grep tems-app | awk '{print $1}'`
if [ -n "$appId" ]; then
echo $appId“ to be killing。。。”
kill $appId
fi
sudo rm -rf /usr/tems/app/tems-app.jar
echo "删除旧Jar...."
sudo cp /var/lib/jenkins/workspace/tems-app/tems-admin/target/tems-app.jar /usr/tems/app
echo "复制新Jar...."
sudo cd /usr/tems/app/
echo "开始启动...."
BUILD_ID=dontKillMe
sudo nohup java -Xms1280m -Xmx2560m -jar /usr/tems/app/tems-app.jar &
echo "构建完成...."
#!/bin/bash
AppName=tems-app.jar
echo "Stop $AppName"
PID=""
query(){
PID=`ps -ef |grep java|grep $AppName|grep -v grep|awk '{print $2}'`
}
query
if [ x"$PID" != x"" ]; then
kill -TERM $PID
echo "$AppName (pid:$PID) exiting..."
while [ x"$PID" != x"" ]
do
sleep 1
query
done
echo "$AppName exited."
else
echo "$AppName already stopped."
fi
rm -rf /usr/tems/app/tems-app.jar
sleep 2
echo "$AppName deleted."
cp tems-admin/target/tems-app.jar /usr/tems/app
sleep 2
echo "$AppName copied."
cd /usr/tems/app/
sleep 2
BUILD_ID=dontKillMe
nohup java -Xms512m -Xmx1024m -jar tems-app.jar &
echo "$AppName start success!!!"
Jenkins码云hook配置
Jenkins前端项目部署
在这里插入代码片
(有时间再完善内容)
如果你发现错误,请指出,如果你觉得有帮助,请点赞!