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去部署
发表回复