zoukankan      html  css  js  c++  java
  • Spring Boot 应用 快速发布到linux服务器的脚本代码示例

    前提说明:
    spring boot 应用打包成jar包之后要部署到Linux服务器上面运行,
    我用的nohup java -jar 命令,但是代码更新之后重新部署的时候覆盖原来的项目,又要手动运行
    ps -ef|grep jar包名 去查找进程,然后kill -9  去kill进程,有时候nohup进程老是kill不掉,只能多试几次,烦不胜烦。
    .后来专门花时间研究了一下脚本和本地window上传文件到linux服务器的命令,
    整合了一个启动脚本,顿时项目部署变得无比简单,一分钟内在线上的代码就可以更新了。下面是具体步骤:

    #!/bin/sh

    RESOURCE_NAME=zhgj-0.0.1-SNAPSHOT.jar

    cd /home/workspace/zhgj3.0/

    git pull 

    mvn clean package

    cd /opt/atlassian/zhgj_3.0/

    tpid=`ps -ef|grep $RESOURCE_NAME |grep -v grep|grep -v kill|awk '{print $2}'`

    kill -9 ${tpid}
     
    rm -f tpid

    ###备份文件
    currenttime=$(date +%Y%m%d%H%M%S)

    cp $RESOURCE_NAME ./backup/$currenttime.jar

    rm -rf $RESOURCE_NAME

    cp /home/workspace/zhgj3.0/target/zhgj-0.0.1-SNAPSHOT.jar /opt/atlassian/zhgj_3.0/

    nohup java -jar $RESOURCE_NAME --spring.profiles.active=test > zhgj3_0.log  2>&1 & 

    sleep 3

    echo $! > tpid
    echo Start Success!

    第二步, 脚本运行   

    cd /home (我是把jar包和脚本放在home下面)

    chmod +x start.sh (第一次运行的时候获取一下超级管理员权限)

    然后以后每次运行直接

    ./start.sh 即可

  • 相关阅读:
    PostgreSQL主从流复制部署
    MySQL集群主从复制搭建
    zabbix修改支持中文主机名
    BGP总结(三)
    BGP总结(二)
    BGP总结(一)
    VXLAN配置实例(华为)
    VXLAN理论解析
    飞塔创建IPSec
    关于SANGFOR AC记录上网记录
  • 原文地址:https://www.cnblogs.com/ccxp/p/9513894.html
Copyright © 2011-2022 走看看