Jenkins是一个插件化的部署工具,对于一个Spring Boot项目经过Jenkins实现自动化部署,大概须要三个流程:html
1)确保Jenkins上Git,Maven的正确配置和使用(略)java
2)在Jenkins上安装Publish over SSH插件,系统管理->插件管理->可选插件->搜索publish over ssh->勾选后,点击直接安装:bash
3)配置Publish over SSH, 系统管理->系统配置->在Publish over SSH中增长服务器服务器
须要确保须要链接的服务器开启了SSH服务,参考ssh
4)新建一个任务,类型选择“构建一个maven项目”maven
5)配置任务:工具
Git配置(略),构建机后续步骤配置:ui
Build是使用maven进行的构建操做,Jenkins服务器会从Git服务器上拉取代码到本地workspace中,根据pom文件和指定clean install指令将工程打成jar包。spa
Post Steps是Build成功以后,将文件发送到指定的SSH服务器上,源文件为target/*jar, 远程目录可指定,文件上传后的运行脚本可指定。.net
6)在目标服务器上准备脚本,因为Publish over SSH是在登陆用户的根目录~上执行操做,在脚本上须要cd到目标目录进行操做。脚本内容如:
DATE=$(date +%Y%m%d) JAVA_HOME=/usr/local/jdk1.8.0_202 CLASSPATH=$JAVA_HOME/lib/ PATH=$PATH:$JAVA_HOME/bin export PATH JAVA_HOME CLASSPATH JARFILE=/usr/local/bootproject/jshERP2.0.jar cd /usr/local/bootproject ps -ef | grep jshERP2.0.jar | grep -v grep | awk '{print $2}' | xargs kill -9 java -jar $JARFILE > out.log & if [ $? = 0 ];then sleep 30 tail -n 50 out.log fi ls -lt|awk 'NR>5{print $NF}'|xargs rm -rf
7)参考:
https://blog.csdn.net/zjh_746140129/article/details/80904789
https://blog.csdn.net/zjh_746140129/article/details/80904876