Tomcat项目部署shell脚本
来源:互联网 发布:明源软件怎么样 编辑:程序博客网 时间:2024/05/18 13:08
http://www.linuxidc.com/Linux/2016-01/127258.htm
为了做集群测试,在每台机器上装了3个tomcat,每次发布项目的时候都要反复敲一些命令,重启tomcat之前先检查tomcat进程有没有停掉,没有还要手动kill该进程。
发布次数多了,操作就比较繁琐了,索性写个脚本一键发布,省时省力^_^。
把deploy.sh和restart.sh分别拷贝到3个tomcat的bin目录下,再用chmod +x给这两个脚本赋上可执行权限。
一键发布命令:./deploy.sh 项目war包 例如:./deploy.sh /home/test.war
说明:deploy.sh会先清空tomcat下的ROOT目录,再将指定的war包加压至ROOT目录,最后执行restart.sh重启tomcat。
代码如下:
1 #!/bin/sh 2 3 war=$1 4 bin=$(cd `dirname $0`; pwd) 5 6 if [ ! -n "${war}" ]; then 7 echo "***Usage: $0 [project.war]" 8 exit 0 9 fi10 if [ ! -f "${war}" ]; then11 echo "***Error: ${war} does not exist."12 exit 013 fi14 if [ ! "${war##*.}" = "war" ]; then15 echo "***Error: ${war} is not a war file."16 exit 017 fi18 19 echo "Deploy ${war##*/}..."20 rm -rf ${bin}/../webapps/ROOT/ && unzip -qo ${war} -d ${bin}/../webapps/ROOT/21 rm -rf ${bin}/../work/Catalina/localhost/22 echo "Restart tomcat..."23 exec ${bin}/restart.sh
如需重启tomcat则使用命令:./restart.sh 或 ./restart.sh -v (参数-v表示启动时打印tomcat启动日志)
说明:restart.sh是用来重启tomcat的,如果tomcat没有启动则直接启动,如果已经启动就先shutdown再启动,如果shutdown之后3s没有停掉tomcat进程,则kill掉原来的进程再启动。
代码如下:
1 #!/bin/sh 2 3 bin=$(cd `dirname $0`; pwd) 4 pid=$(ps aux | grep tomcat | grep -v grep | grep -v restart | grep ${bin} | awk '{print $2}') 5 6 if [ -n "${pid}" ]; then 7 echo "Shutdown..." 8 sh ${bin}/shutdown.sh 9 sleep 310 11 pid=$(ps aux | grep tomcat | grep -v grep | grep -v restart | grep ${bin} | awk '{print $2}')12 if [ -n "${pid}" ]; then13 kill -9 ${pid}14 sleep 115 fi16 fi17 18 echo "Startup..."19 sh ${bin}/startup.sh20 if [ "$1" = "-v" ]; then21 tail -f ${bin}/../logs/catalina.out22 fi
本人用的是CentOS,3个tomcat分别在/opt/apache-tomcat-7.0.65/下的8080/8081/8082子目录下,监听8080/8081/8082端口。运行截图如下:
最后在浏览器里输入 http://localhost:8080 即可访问。
0 0
- Tomcat项目部署shell脚本
- 快速部署tomcat项目的Shell脚本
- 部署tomcat项目的Shell脚本
- shell的tomcat部署脚本
- Git下部署项目的shell脚本
- 使用shell自动部署tomcat项目
- shell脚本--部署应用到tomcat并启动tomcat
- shell脚本部署并启动tomcat(简单例子)
- linux服务器批量部署应用系统shell脚本(Tomcat/jetty)
- shell 部署脚本
- jenkins -- shell 部署脚本
- 服务器通过mavn部署项目至tomcat脚本
- jdk+tomcat部署脚本
- tomcat自动化部署脚本
- 部署tomcat脚本
- shell 脚本安装tomcat
- jenkins部署maven项目构建后部署前执行shell脚本
- jenkins 自动部署脚本 自动启停tomcat并部署项目
- Spring集成Redis步骤
- PAT乙级(Basic Level)练习题 >分解因数
- 例题6-13 古代象形符号 UVa1103
- 微信开发 一 接入篇
- Codeforces Round #410 (Div. 2) C. Mike and gcd problem 贪心
- Tomcat项目部署shell脚本
- 批处理 自动关闭若干进程,以备关机
- ubuntu 更改wifi的mac地址
- 【IMWeb训练营作业】
- [IMWeb训练营作业]vue实现自定义select下拉框组件
- Activity生命周期順序
- 【IMWeb训练营作业】Select
- A
- 虚拟货币开发入门知识一