java项目尤其是通过maven打包的项目在部署上传的时候通常会遇到 打包->ssh上传->启动的麻烦。但是有时候以为项目小或者服务器限制没法做jenkins这类的自动化部署工具,所以就很麻烦。因此结合网上的和自己需求写了一个脚本,以实现在远程服务中只需要通过git来pull下代码后即可运行脚本执行打包部署项目工作,方便了很多。
当然是将项目pull出来
git pull
借鉴了网上的杀死进程脚本
#! /bin/bash # process-monitor.sh process=$1 ps x | grep $process | grep -v grep pid = $(ps x | grep $process | grep -v grep | grep -v 'stop.sh' | awk '{print $1}') echo 关闭进程 $pid kill $pid sleep 5
#! /bin/bash mvn clean pakage -Dmaven.test.skip echo '打包成功' /cp -rf xxxxxx/src/main/resources/application-* xxxxxx/config /cp -rf xxxxxx/target/XX.jar xxxxxx/xx.jar sh stop.sh xx.jar nohup java -Xmx128m -jar xxxxxx/xx.jar > xxxxxx/xx.log 2>&1 & echo '启动成功' tail -f xxxxxx/xx.log
还是比较好理解的。
玩个坑,看看后面可不可以做一个整合git的脚本然后再看看能不能自动或者定时任务比对git的commitId自动pull去部署