美文网首页SpringBoot精选我用 LinuxSpringFramework
Spring在gradle构建下服务器自动部署脚本

Spring在gradle构建下服务器自动部署脚本

作者: Rick____ | 来源:发表于2016-09-25 23:44 被阅读956次

    如果你正在周而复始干服务器部署的话。下面写的一段shell 脚本应该还是可以有点收获的,还算是挺实用的。

    最近部署了第几次服务器,感觉写的有点郁闷,为啥老是写相同的东西呢,然后这个脚本就产生了。

    实现思路

    1. ps 显示进程,grep筛选进程,awk是一个强大的文本分析工具筛选出tomcat8的pid
    2. kill掉tomcat的进程
    3. gradle 自动编译打包成war包,如果使用maven则换maven的打包即可
    4. 更新你的代码,svn update 或者git pull 即可
    5. 最后在startup.sh 即可启动tomcat
    6. 最后的最后当然是crontab -e 写下你的定时任务了。然后你就可以愉快的写代码了。再也不用烦恼服务器部署的事了。

    使用方法:
    1. 相信了解linux的人都懂改的。
    缺陷:
    仍未实现的地方是,当编译错误,项目启动失败,没有发送邮件给你。这个是很大的弊端的,也就是没有错误检查了。

    #!/bin/sh
    TOMCAT='/mnt/service/apache-tomcat-8.0.37'
    PROJECT='/mnt/project/ascmRedRain/redRainInterface'
    
    echo "deploy redRainProject"
    
    pidList=`ps -ef|grep apache-tomcat-8.0.37|grep -v 'grep'|awk '{print $2'}`
    
    if [ "$pidList" = "" ]; then
    
          echo "no tomcat pid alive"
    
    else
    
      echo "tomcat id list :$pidList"
      kill -9 $pidList
      echo "kill $pidList"
    
    fi
    
    echo "svn update and clean complier and package"
    cd $PROJECT&&svn update&&gradle clean&&gradle war
    
    rm -rf $TOMCAT/webapps/redRainInterface.war && rm -rf $TOMCAT/webapps/redRainInterface
    
    echo "copy to tomcat webApps "
    cp build/libs/redRainInterface.war $TOMCAT/webapps/
    
    echo "start tomcat ! Go Go Go!!!"
    cd $TOMCAT && ./bin/startup.sh
    

    <h1>最后点个👍吧。</h1>

    相关文章

      网友评论

        本文标题:Spring在gradle构建下服务器自动部署脚本

        本文链接:https://www.haomeiwen.com/subject/nzofyttx.html