web工程自动部署(tomcat服务器)
工作中经常需要把web项目打成war包之后部署到tomcat服务器上,每次更新时步骤比较类似,这里提供公共步骤,编写名为auto_deploy.sh的shell脚本,只需要传递两个参数即可自动完成部署操作。舒服!
参数1:要部署的工程名
参数2:要部署文件的路径
shell脚本如下:
#传递参数 要部署的工程名 要部署文件目录路径
#!/bin/bash
#需要修改的地方 start--
#工程名
readonly project_name= #端口号
readonly port=
readonly xml_name=''
readonly sh_name=''
#需要修改的地方 end--
#今日时间 格式为 YYYYY_MM_DD_HH_MM
suffix=`date +%Y%m%d%H%M`
#要部署工程的名字
cur_project_name=$
#要部署文件目录路径
declare dir=$
echo "传入的参数为部署工程名:$cur_project_name 文件路径:$dir"
#备份后的名字
bk_project_name=${project_name}"_"${suffix}
echo ${bk_project_name}
#备份原工程
echo 'start---'
if [ -d /data/wwwroot/$project_name ];
then
sudo mv /data/wwwroot/$project_name /data/wwwroot/$bk_project_name
#拷贝待部署工程到wwwroot目录
sudo cp -rf ${dir}/$cur_project_name /data/wwwroot/
echo '拷贝over...'
#重命名新工程名
sudo mv /data/wwwroot/$cur_project_name /data/wwwroot/$project_name
echo '重命名over...'
#删除新工程class目录下除'cn'以外的文件
ls /data/wwwroot/$project_name/WEB-INF/classes/ |grep -v cn|xargs rm -rf {}
echo '清空新工程class下目录over...'
#拷贝原工程中class下除'cn'以外的目录到新工程对应目录中
cd /data/wwwroot/$bk_project_name/WEB-INF/classes/
ls|grep -v cn|xargs -i cp -rf {} /data/wwwroot/$project_name/WEB-INF/classes/
echo '添加class下目录over...'
#覆盖web.xml文件
sudo cp -rf /data/wwwroot/$bk_project_name/WEB-INF/web.xml /data/wwwroot/$project_name/WEB-INF/
echo '覆盖over...'
#查看原工程运行的进程id并kill
ps -ef|grep java|grep ${port}|grep ${xml_name}|grep -v grep|awk '{print "kill -9 " $2}' |sh
echo 'kill over...'
#进入tomcat的bin目录下面
cd /data/program/tomcat/bin/
sudo ./${sh_name}.sh start
echo 'end...'
else
echo '路径不存在'
fi
web工程自动部署(tomcat服务器)的更多相关文章
- IDEA Community(社区版) 使用Maven创建Web工程 并部署tomcat
由于IDEA社区版(Community)无法直接New一个Web Appplication 所以要使用maven来创建 1.创建一个Project 2. 3. 4.这里在Properties中添加一个 ...
- idea创建web工程、配置tomcat及基本配置
背景 现在许多人从eclipse转到idea了,小编也不例外.但是刚转初期还是有挺多不适应的,特总结了创建maven的web工程.配置tomcat服务器及基本配置.有了这些配置,上手idea也就跟ec ...
- 使用Maven自动部署Tomcat 6和Tomcat 7下Web应用
使用Maven自动部署Tomcat 6和Tomcat 7下Web应用 开启Tomcat远程管理权限 在tomcat的config目录下的tomcat-users.xml文件, <role rol ...
- Eclipse中的Web项目自动部署到Tomcat的webapp目录下
Eclipse中的Web项目自动部署到Tomcat 原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的很快,但记忆总是很模糊,偶尔犯错,以前很少写 ...
- 二十二. 安装部署Tomcat服务器、使用Tomcat部署虚拟主机、使用Varnish加速Web
web proxy web1 web2 1.安装部署Tomcat服务器 web1 1.1 使用RPM安装JDK环境 ]# yum -y install java-1.8.0-openjdk ]# ...
- 部署Tomcat服务器
部署Tomcat服务器,具体内容如下: 1.安装部署JDK基础环境; 2.安装部署Tomcat服务器; 3.创建JSP测试页面,文件名为test.jsp,显示服务器当前时间. 然后客户机访问Web服务 ...
- 高级运维(四):Nginx常见问题处理、安装部署Tomcat服务器、使用Tomcat部署虚拟主机
一.Nginx常见问题处理 目标: 本案例要求对Nginx服务器进行适当优化,以提升服务器的处理性能: 1> 不显示Nginx软件版本号 2> 如果客户端访问服务器提示“Too many ...
- 安装部署Tomcat服务器
安装部署Tomcat服务器 案例1:安装部署Tomcat服务器 案例2:使用Tomcat部署虚拟主机 案例3:使用Varnish加速Web 1案例1:安装部署Tom ...
- Jenkins自动部署Tomcat项目
Jenkins自动部署Tomcat项目 1.安装jenkins 插件 启动Jenkins,进入系统管理-插件管理: 选择Deploy to container Plugin 插件安装:
随机推荐
- 【学习】jquery.placeholder.js让IE浏览器支持html5的placeholder
type为text或password的input,其在实际应用时,往往有一个占位符,类似这样的: 在没有html5前,一般写成value,用js实现交互,文本框获得焦点时,提示文字消失,失去焦点时,文 ...
- BootStrap教程完整版
http://www.runoob.com/bootstrap/bootstrap-navbar.html
- Prometheus 到底 NB 在哪里?- 每天5分钟玩转 Docker 容器技术(84)
本节讨论 Prometheus 的核心,多维数据模型.我们先来看一个例子. 比如要监控容器 webapp1 的内存使用情况,最传统和典型的方法是定义一个指标 container_memory_usag ...
- 跨站请求伪造(CSRF)-简述
跨站请求伪造(CSRF)-简述 跨站请求伪造(英语:Cross-site request forgery),也被称为 one-click attack 或者 session riding,通常缩写为 ...
- 2017年最受欢迎的UI框架
前端领域最近几年发展的特别迅速,可以说是百家争鸣.在底层的前端框架领域中,最早是jquery称霸互联网,近两年MVVM类型的框架慢慢成为主流,Vue.React和Angular三大框架并驾齐驱.可以说 ...
- LeetCode 219. Contains Duplicate II (包含重复项之二)
Given an array of integers and an integer k, find out whether there are two distinct indices i and j ...
- LeetCode 119. Pascal's Triangle II (杨辉三角之二)
Given an index k, return the kth row of the Pascal's triangle. For example, given k = 3,Return [1,3, ...
- Single linked list by cursor
有了指针实现看似已经足够了,那为什么还要有另外的实现方式呢?原因是诸如BASIC和FORTRAN等许多语言都不支持指针,如果需要链表而又不能使用指针,那么就必须使用另外的实现方法.还有一个原因,是在A ...
- component及刚体rigidbody用法
关于getcomponent函数,rigidbody(2d)的嵌套关系及用法 1.getcomponent函数 在unity中脚本可以看成是可定义的组件,我们经常要访问同一对象或不同对象中的脚本,可以 ...
- js实现获取短信验证码倒计时
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...