Shell脚本 自动部署 SpringBoot 应用

公司项目使用了SpringBoot。开发的应用需要自动上传到服务器。虽然目前对热部署还没完全掌握。先使用shell简化一下部署吧。

# 上传密钥
sshLoginKey=/f/MyFile/root.key
# 项目在本机的目录
MyProject=/d/MyProject/comment

# 远程主机上的路径
RemoteHost=root@domainName.com
RemotePath=$RemoteHost:/data/

if [ -f "$sshLoginKey" -a -d "$MyProject" ];then
    cd $MyProject
    # 只输出错误
    mvn clean package -q
    # 查找target目录中,最近1分钟内打包的文件。为了脚本通用性,不指定文件名。借助find 查找。
    fileName=$(find target -maxdepth 1 -type f -size +20M -regex "target/\w+\.[jw]ar" -cmin -1)
if [ -e "$fileName" ];then echo "打包成功" scp -P 2233 -i $sshLoginKey $fileName $RemotePath; if [ $? -eq 0 ];then echo "上传成功。"; # 停止服务 ssh -p 2233 $RemoteHost -i $sshLoginKey "ps -ef | awk '\$NF~/comment/{print \$2}' | xargs kill -9 " # 启动服务 # ssh -p 2233 $RemoteHost -i $sshLoginKey "/root/jdk1.8.0_152/bin/java -jar /data/comment.jar 2>&1 >/var/log/comments.log &" else echo "上传失败。"; fi else echo "打包失败" exit 1 fi if [ -f "$fileName" ];then rm -rf $fileName fi else echo "密钥或项目不存在"; sleep 5s; fi

 

转载于:https://www.cnblogs.com/zhengwenqiang/p/8586101.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值