linux-springboot自动发包脚本

一、脚本命令

#命令上传jar重启
#生效环境变量
source /etc/profile
#进入目录
targetDir=/root/yc-cloud/yc-bag-7003/test
bakDir=/root/yc-cloud/yc-bag-7003/test/bak
cd $targetDir
#定义变量
log=log.out
key=eureka-server
maxBakSize=3
oldJar=`ps -ef | grep $key| grep -v grep | awk '{print $12}'`
oldPid=`ps -ef | grep $key| grep -v grep | awk '{print $2}'`
#开始
echo "====deploy start===="
#移动备份旧包
targetSize=`ls -l |grep $key|wc -l`
#新增型上传备份,覆盖型上传无操作
if [ $targetSize -gt 1 ]
then
        echo "移动备份旧包:$oldJar"
        mv -f $oldJar $bakDir
        #保持最大备份
        cd $bakDir
        currentBakSize=`ls -l |grep $key|wc -l`
        while [ $currentBakSize -gt $maxBakSize ]
        do
                #删除最旧的包
                delJar=`ls -tr|grep $key| grep -v grep | head -n 1`
                rm -rf $delJar
                echo "删除最旧的包:$delJar"
                currentBakSize=`ls -l |grep $key|wc -l`
        done
        cd $targetDir
fi
#杀死旧进程
echo "杀死旧进程:$oldPid"
if [ -n "$oldPid" ]
then
   kill -9 $oldPid
fi
#新包发布
currentJar=`ls -t|grep $key| grep -v grep | head -n 1`
echo "新包发布:$currentJar"
nohup java -jar -Xms256m -Xmx512m $currentJar> $log &
echo "====$currentJar deploy finished===="
#打印日志
echo "打印日志:$log"
tail -f $log

二、附加Alibaba Cloud Toolkit发布方式(其他工具类似)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值