zoukankan      html  css  js  c++  java
  • tomcat一键发布

    1. 场景描述

    linux下tomcat一键发布,包含停用服务、删除war包、拷贝war包及备份、重启服务等,以前的版本还包含svn更新及打包,后来在生产上怕出问题,改成本地打war包后,ftp上传到指定目录的方式。

    2. 解决方案

    2.1 真实代码

    文件名称做了隐藏更改处理,修改文件路径后可使用。

    #!/bin/sh
    #1
    instance="apache-tomcat-8.0.53";
    tomcat_progrm="/home/laowang/programs/apache-tomcat-8.0.53";
    target_home="/home/laowang/programs/dist";
    target_home_back="/home/laowang/programs/dist/back";
    
    function running(){
    b=""
    for ((i=0;i<=100;i+=2))
    do
    printf "progress:[%-50s]%d%%
    " $b $i
    sleep 0.2
    b=#$b
    done
    echo
    }
    #2
    pid=`(ps -ef | grep $tomcat_progrm | grep -v "grep") | awk '{print $2}'`
    kill -9 $pid
    running ;
    ps aux | grep $instance | grep -v grep;
    #3
    rm -rf ${tomcat_progrm}/webapps/laowang* ;
    #4
    mkdir ${target_home_back}/$(date +%Y%m%d%H%M%S)
    cp ${target_home}/*.war  ${target_home_back}/$(date +%Y%m%d%H%M%S)/
    
    cp ${target_home}/*.war ${tomcat_progrm}/webapps/laowang-web.war
    echo ${tomcat_progrm}/bin/startup.sh ;
    #5
    nohup ${tomcat_progrm}/bin/startup.sh;
    running;
    #6
    tail -f ${tomcat_progrm}/logs/catalina.out ;
    
    

    2.2 代码说明

    2.2.1 定义变量

    三个变量分别为tomcat解压目录,tomcat的war包是上传目录(可以任意定,只要有操作权限就行)、tomcat的war包子目录,备份用,也可以自己定义。

    #1
    instance="apache-tomcat-8.0.53";
    tomcat_progrm="/home/laowang/programs/apache-tomcat-8.0.53";
    target_home="/home/laowang/programs/dist";
    target_home_back="/home/laowang/programs/dist/back";
    
    2.2.2 查找现有tomcat进程并停用掉。
    #2
    pid=`(ps -ef | grep $tomcat_progrm | grep -v "grep") | awk '{print $2}'`
    kill -9 $pid
    running ;
    ps aux | grep $instance | grep -v grep;
    
    2.2.3 删除tomcat下历史war包
    #3
    rm -rf ${tomcat_progrm}/webapps/laowang* ;
    
    2.2.4 新建备份文件夹,备份最新war包,并将最新war拷贝到tomcat的启动目录(webapps)
    #4
    mkdir ${target_home_back}/$(date +%Y%m%d%H%M%S)
    cp ${target_home}/*.war  ${target_home_back}/$(date +%Y%m%d%H%M%S)/
    
    cp ${target_home}/*.war ${tomcat_progrm}/webapps/laowang-web.war
    echo ${tomcat_progrm}/bin/startup.sh ;
    
    2.2.5 启动tomcat服务
    #5
    nohup ${tomcat_progrm}/bin/startup.sh;
    
    2.2.6 实时查看下日志,检验是否有错误。
    #6
    tail -f ${tomcat_progrm}/logs/catalina.out ;
    

    2.3 最后说明

    假如根据日志看没啥问题,或者有信心没问题,可直接按ctrl+c退出。


  • 相关阅读:
    Git Extensions system.invalidoperationexception尚未提供文件名,因此无法启动进程
    批处理将文件夹下的文件名称写入到一个文本里
    hdwiki 参考资料改成可点击跳转的(默认不能点)
    执行存储过程报错——ora-01031:权限不足
    Web Service——CXF发布REST服务
    Web Service——CXF+Spring 整合
    Web Service——CXF
    xmlhttp.readyState==4 && xmlhttp.status==200的探究
    XMLHttpRequest cannot load ...谷歌浏览器跨域问题
    Web Service基础——四种客户端调用方式
  • 原文地址:https://www.cnblogs.com/ruanjianlaowang/p/11182724.html
Copyright © 2011-2022 走看看