ycvodzf 发表于 2018-12-7 08:43:54

Centos 6.5 x64 tomcat发布脚本

  内网有一台服务器,安装了svn和tomcat

  需要把代码上传到online_test(步骤:a)
  然后online_test上传到线上环境(步骤:b)
  

  注意:
  内网服务器->线上测试(online_test)->线上 这3台服务器做了ssh秘钥认证
  内网服务器安装了lrzsz软件
  

  /root/service.properties是已经修改的数据库配置文件,因为每台服务器,连接的数据库是不一样的。
  

  

  首先介绍步骤:a的脚本
  #!/bin/bash
  

  #yum install -y lrzsz
  

  #线上测试服务器
  remote_ip="1.1.1.1"
  #当前日期
  time=`date +"%Y-%m-%d"`
  

  #判断上传目录
  if [ ! -d "/release" ];then
     mkdir /release
  fi
  

  #进入指定目录,清空目录
  cd /release
  rm -rf /release/*
  #开始选择的上传文件
  rz
  

  file=`ls /release/`
  #判断文件是否符合要求
  if [ "$file" != "cma.war" ];then
  echo -e "\033
  rm -rf /release/*
  exit
  else
  echo -e "文件上传 \033
  ssh -p 22 root@$remote_ip "killall -9 java"
  ((`echo $?` == "0"))&& echo -e "远程服务器停止tomcat \033
  

  ssh -p 22 root@$remote_ip "rm -rf /usr/local/tomcat/webapps/cma.war"
  ssh -p 22 root@$remote_ip "rm -rf /usr/local/tomcat/webapps/cma"
  ((`echo $?` == "0"))&& echo -e "远程服务器删除cma.war和cma目录 \033
  
  scp -r -P 22 -r /release/cma.war $remote_ip:/usr/local/tomcat/webapps
  ((`echo $?` == "0")) && echo -e "cma.war传输到远程服务器 \033
  

  ssh -p 22 root@$remote_ip "/etc/init.d/tomcat start >> /dev/null"
  ((`echo $?` == "0"))&& echo -e "远程服务器启动tomcat \033
  echo -e "\033
  sleep 10
  

  ssh -p 22 root@$remote_ip "cp /root/service.properties /usr/local/tomcat/webapps/cma/WEB-INF/classes/service.properties"
  ((`echo $?` == "0"))&& echo -e "远程服务器复制tomcat配置文件 \033
  

  ssh -p 22 root@$remote_ip "killall -9 java && /etc/init.d/tomcat start >> /dev/null"
  ((`echo $?` == "0"))&& echo -e "远程服务器重启tomcat \033
  

  echo -e "\033
  
  fi
  

  

  步骤:b的脚本

  

  #!/bin/bash
  

  #线上服务器
  remote_ip="1.1.1.2"
  #当前日期
  time=`date +"%Y-%m-%d"`
  

  #判断文件是否存在
  if [ ! -f "/usr/local/tomcat/webapps/cma.war" ];then
  echo -e "\033
  exit
  else
  ssh -p 22 root@$remote_ip "killall -9 java"
  ((`echo $?` == "0"))&& echo -e "远程服务器停止tomcat \033
  

  ssh -p 22 root@$remote_ip "rm -rf /usr/local/tomcat/webapps/cma.war"
  ssh -p 22 root@$remote_ip "rm -rf /usr/local/tomcat/webapps/cma"
  ((`echo $?` == "0"))&& echo -e "远程服务器删除cma.war和cma目录 \033
  
  scp -r -P 22 -r /usr/local/tomcat/webapps/cma.war $remote_ip:/usr/local/tomcat/webapps
  ((`echo $?` == "0")) && echo -e "cma.war传输cma.war到远程服务器 \033
  

  ssh -p 22 root@$remote_ip "/etc/init.d/tomcat start >> /dev/null"
  ((`echo $?` == "0"))&& echo -e "远程服务器启动tomcat \033
  echo -e "\033
  sleep 10
  

  ssh -p 22 root@$remote_ip "cp /root/service.properties /usr/local/tomcat/webapps/cma/WEB-INF/classes/service.properties"
  ((`echo $?` == "0"))&& echo -e "远程服务器复制tomcat配置文件 \033
  

  ssh -p 22 root@$remote_ip "killall -9 java && /etc/init.d/tomcat start >> /dev/null"
  ((`echo $?` == "0"))&& echo -e "远程服务器重启tomcat \033
  

  echo -e "\033
  

  
  fi
  

  

  




页: [1]
查看完整版本: Centos 6.5 x64 tomcat发布脚本