`
dinguangx
  • 浏览: 240422 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

tomcat自动化部署脚本

 
阅读更多

   一个简单的tomcat自动化部署脚本 ,实现功能:

 

   (1) 检查tomcat进程是否存在,如果存在则kill掉

   (2) 备份现有war包到tomcat/backup目录

    (3) 复制当前目录新war包到tomcat/webapps目录

  (4) 启动tomcat

 

#!/bin/bash
now=`date +%Y%m%d%H%M%S`
tomcatPath=/home/tomcat/software/tomcat6
backupPath=/home/tomcat/software/tomcat6/backup
war=$1

if [ -e "$war.war" ]; then
  echo -e "\033[34m war archive: $war.war \033[0m"
else 
  echo -e "\033[31m war archive '$war.war' not exists \033[0m"
  exit -1
fi
# change color
echo -e "\033[34m"
#create backup dir
if [ ! -d "$backupPath" ]; then
  mkdir "$backupPath"
fi
echo "tomcat home: $tomcatPath"
echo "backup path: $backupPath"
echo 'try to stop tomcat...'

pid=`ps aux|grep "java"|grep "$tomcatPath"|awk '{printf $2}'`
if [ -n $pid ]; then
  echo "tomcat pid: $pid";
  kill -9 $pid;
fi

echo 'stop tomcat finished...'
echo 'backup old archive...'
if [ -f "$tomcatPath/webapps/$war.war" ]; then
  mv -v "$tomcatPath/webapps/$war.war" "$backupPath/$1_$now.war";
fi

rm -rf $tomcatPath/webapps/$war*
echo "copy $war.war archive to webapps.."
cp -v "$war.war" "$tomcatPath/webapps/"

echo -e "\033[32m"
echo 'startup tomcat...'

sh $tomcatPath/bin/startup.sh

tail -10f $tomcatPath/logs/catalina.out

   

 

   使用时,需要先修改tomcatPath的值为实际tomcat路径。

 

    保存该文件到autodeploy.sh, 执行命令: 

./autodeploy.sh  abc

   abc为待发布的war包名称,即当前目录存在两个文件:

   autodeploy.sh和abc.war

分享到:
评论

相关推荐

    自动化部署脚本

    tomcat部署web项目的自动化部署脚本

    Linux 多tomcat服务 统一安装 统一部署 工具 shell编写 自动化部署与统一安装升级 - 类ansible工具

    自动化统一安装部署,包括:上传解压war包、同步配置、启动服务、监控服务等。 list.ll one.sh pass.war startup.sh syn.cn two.sh 部署支持统一安装于分布式安装,每个脚本可以拆分开任意组合使用,比如: ...

    Jenkins自动化部署,包含通过Publish Over SSH 远程脚本部署

    1、包含jenkins 远程发布到tomcat 容器 2、解决了tomcat发布后需手动重启的问题。 具体通过Publish Over SSH 插件,实现远程文件copy、远程脚本执行、远程tomcat重启,实现真正的全自动化部署

    j2deploy:基于tomcat的j2ee自动化部署脚本

    This reporitory is for deploy j2ee app to test/production environment 涉及技术关键字: linux , tomcat , daemontools , bash , ...jstart是tomcat启动脚本 jput是启动脚本 jconfig 用于触发jolokia调用mbean方法

    真正实现一键自动化部署,Nginx+Tomcat+Redis 实现负载均衡集群服务搭建,所有文件自动生成,包括自动生成配置文件参数、解决依赖问题、Session

    真正实现一键自动化部署,Nginx+Tomcat+Redis 实现负载均衡集群服务搭建,所有文件自动生成,包括自动生成配置文件参数、解决依赖问题、Session共享同步问题等等,直接把 Web 应用的 war 包,放进Tomcat的 webapps ...

    自动化运维部署脚本全集-适合所有IT人

    项目致力于实现一键部署各种常见服务,实现常用功能,且具有幂等性(多次执行效果一致)的脚本 . ├── 01-installation-scripts │ ├── 01-MySQL │ ├── 02-Zabbix │ ├── 03-Jumpserver │ ├── ...

    java war包+tomcat+svn+pom.xml实现各开发环境自动化部署

    1.yum安装svn (注意防火墙开发端口号,如果是 云服务器,需要添加安全组开发端口号) 2.创建svn资源仓库 3.有以下几个配置文件 conf db format hooks...第二步 设置历史回滚路径和 脚本 1 路径管理 2 脚本 第三步 部署测试

    通过跳板机,多tomcat服务统一安装部署(shell编写)

    bin : 提供总执行与单一执行脚本,脚本通过自动化获取配置,便于维护与扩展。 bak : 保留获取原配置文件,便于问题分析。 temp : 临时文件将及时删除无任何冗积。 tools: 常用配置与通用文件处理写入统一函数,具体...

    常用shell 脚本,dos攻击防范,

    服务器系统配置初始化脚本.sh 本教程由我爱学it提供.url 查看网卡实时流量脚本.sh 监控100台服务器磁盘利用率脚本.sh 监控MySQL主从同步状态是否异常脚本.sh 目录文件变化监控和实时文件同步.sh 自动发布Java...

    java流程自动化工具

    三、应用部署:GIT代码拉取,MAVEN打包,SFTP上传,Linux脚本执行,自动化一气呵成,且轻松实现切换用户等交互性需求,数据初始化,多应用的启动顺序或特定条件触发,均可实现自动化操作。 四、模拟操作:接口调试,...

    stop.sh脚本文件

    Linux下部署Tomcat的脚本文件,用于Jenkins自动化部署环境的。具体使用方法请在我的博客中搜索:Jenkins自动化部署环境

    自动化打包发布服务器war包

    我用perl写了一个自动化部署的脚本,可以给中小开发者一些自动化的学习和提示。 首先你使用的是windows server,在本地安装了perl,然后在perl里安装几个包,在服务器上安装ftp server ,打开服务器的telnet端口,...

    Linux Shell脚本经典案例合集

    服务器系统配置初始化脚本.sh 监控100台服务器磁盘利用率脚本.sh 监控MySQL主从同步状态是否异常脚本.sh 秒传_18个Linux Shell脚本经典案例(视... 目录文件变化监控和实时文件同步.sh 批量创建100用户并设置密码脚本...

    详解docker部署Jenkins新手使用教程

    在基础镜像Jenkins上安装Maven及自带的OpenJDK形成新的镜像,然后通过SVN将项目checkout下来,由Jenkins自带的插件或脚本将Maven生成的war包发送到指定的Tomcat的WebApps目录下,最终启动Tomcat完成自动化部署。...

    Linux下安装部署JDK7+Tomcat7+MySQL5.6+Redis3.07

    安装及设置Redis3.07 安装、配置redis,修改守护模式、创建脚本,设置自动启动 【课程目标】 搭建服务器,安装centos1.7操作系统,jdk1.7,tomcat7,mysql5.6,redis3.07。 【课程计划】 第一节是系统安装,jdk...

    Jenkins+Ant+Tomcat持续集成自动化测试平台搭建

    持续集成:ContinuousIntegration,简称CI。是一种软件开发实践,...ApacheAnt:是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。下载传送门:在路径{Ant安装位置}

    Jenkins管道工作流自动化部署

    它支持软件配置管理(SCM)工具(包括AccuRevSCM、CVS、Subversion、Git、Perforce、Clearcase和RTC),可以执行基于ApacheAnt和ApacheMaven的项目,以及任意的Shell脚本和Windows批处理命令。Jenkins的主要开发者是...

    tomcat:我的第一个测试项目

    使用python脚本实现自动化部署tomcat

Global site tag (gtag.js) - Google Analytics