单机部署tomcat的shell脚本
单机部署tomcat的shell脚本,来自网络,自己需要时要根据自己的需求改动。
#!/bin/sh
#
####################################################################
# Before the shell,you need to run this: #
# #
# >cd /usr/local/workspace #
# >git clone -b dev git@idcwxtest.dafysz.cn:root/mobile-biz.git #
# #
#################################################################### echo "======== Are you Ready? ==========" _GIT_SHELL=git pull git@idcwxtest.dafysz.cn:root/mobile-biz.git dev _PRO_NAME=mobile-biz _TOMCAT_NAME=tomcat-7.0.59-node6 _WAR_NAME=${_PRO_NAME}.war
_TOMCAT_HOME=/usr/local/tomcat/${_TOMCAT_NAME}
_TOMCAT_WEBAPPS_PRO=${_TOMCAT_HOME}/webapps/${_PRO_NAME}
_TOMCAT_WEBAPPS_WAR=${_TOMCAT_HOME}/webapps/${_WAR_NAME}
_TOMCAT_START=${_TOMCAT_HOME}/bin/startup.sh
_TOMCAT_PID=$( ps aux | grep ${_TOMCAT_NAME} | grep -v grep | awk '{print $2}' ) _MAVEN_REPO_WAR=/usr/local/workspace/target/${_WAR_NAME} _WAR_HIS=/usr/local/war/${_WAR_NAME} _DATE=$(date +"%Y%m%d") #
_TIME=$(date +"%H%M%S") # cd /usr/local/workspace echo "======== 1. <pull> from Git =========="
${_GIT_SHELL}
sleep 1 echo "======== 2. <clean install> By Maven =========="
mvn clean install echo "======== 3. <kill tomcat> shutting down the tomcat =========="
echo "Get Tomcat PID: " $_TOMCAT_PID if [[ ${_TOMCAT_PID} ]] # if PID exists
then
echo "PID exists"
echo "Kill ing... "
kill -9 ${_TOMCAT_PID}
sleep 3
else
echo "PID is not exists, ready for start."
fi echo "======== 4. <backup war> move war file to History/ =========="
mv -f ${_TOMCAT_WEBAPPS_WAR} ${_WAR_HIS}.${_DATE}.${_TIME} echo "======== 5. <deploy new-war> add *.war to /webapps =========="
cp ${_MAVEN_REPO_WAR} ${_TOMCAT_WEBAPPS_WAR}
rm -rf ${_TOMCAT_WEBAPPS_PRO} echo "======== 6. <starting tomcat> startup.sh =========="
${_TOMCAT_START}
sleep 3 echo -e "\n\nBuild Complete."
echo " ^_^ "
echo ""
单机部署tomcat的shell脚本的更多相关文章
- linux服务器批量部署应用系统shell脚本(Tomcat/jetty)
linux服务器批量部署应用系统shell脚本: 1.请更换代码内的服务器地址(Tomcat或jetty服务器) serverRoot=/home/undoner/java_tool/apache-t ...
- 运维与自动化系列③自动化部署基础与shell脚本实现
自动化部署基础与shell脚本实现 关于自动化的基础知识: 1.1:当前代码部署的实现方式: 运维纯手工scp到web服务器纯手工登录git服务器执行git pull或svn服务器执行svn upda ...
- linux系统下重启tomcat的shell脚本
linux系统下重启tomcat的shell脚本: #!/bin/shtomcat_home=/opt/apache-tomcat- #找到tomcat进程的id并kill掉 ps -ef |grep ...
- solr单机部署tomcat
所需软件:solr4.8.1.Tomcat7 下载完相应软件后开始单机部署(windows下) 在F盘根目录创建solr文件夹,并解压solr4.8和tomcat7到该文件夹 在F盘根目录创建solr ...
- 在linux中安装jdk以及tomcat并shell脚本关闭启动的进程
在命令行模式中输入uname -a ,如下图,当界面展示i386就说明本linux系统为32版本,就在官网下载对应jdk版本,或者直接到我的网盘上下载http://pan.baidu.com/s/1c ...
- Jenkins部署web项目到Tomcat(shell脚本)
一.首先配置Publish Over SSH插件 配置地址:系统管理-->系统设置-->Publish over SSH(需要安装Publish over SSH插件) 二.jenkins ...
- Tomcat重启Shell脚本
--测试通过 vim restart_tomcat.sh#!/bin/bash# Filename: restart_tomcat.sh# Description: Restart tomcat# D ...
- 案例3-ubuntu和centos中自动部署tomcat相关服务的脚本
涉及redis,mysql,xtrabackup, tomcat 1. ubuntu中 #!/bin/bash #first, change to root #出错立刻中断 set -e apt-ge ...
- 实现android自动化测试部署与运行Shell脚本分享
我的配置是linux 64, android4.2.2的sdk. 实现的细节都在代码注释里了,变量名以及echo的内容也是说明的一部分. 主流程为: 1.检测是否指定端口的模拟器已经运行,若有则关闭2 ...
随机推荐
- Facebook Rebound 弹性动画库 源码分析
Rebound源码分析 让动画不再僵硬:Facebook Rebound Android动画库介绍一文中介绍了rebound这个库. 对于想体验一下rebound的效果,又懒得clone和编译代码的, ...
- Linux学习之十八-sudo分权管理
sudo分权管理 1.为什么需要sudo? 当我的主机是多人共管的环境时,如果大家都使用 su 来切换成为 root 的身份,那么就得每个人知道 root 的密码,这样密码太多人知道可能会流出去,很不 ...
- 记一个发HTML格式邮件的问题
很早做了一个自动发邮件的程序,前一向发现Notes升级后反而CSS样式都没有了. 起初不以为意,反正格式数据在,客户也没说啥,后来觉得这样的态度要不得,小洞不补,大洞吃苦. 于是查查资料,发现浏览器里 ...
- GTD实用指南
以前通过余弦大牛博客接触到了GTD, 后来我自己接触之后呢, 我是非常讨厌GTD的, 因为太功利化了 反人类 我还是比较懒得··· 可是最近事情真的比较多,不得不做GTD了 = = 郁闷! 时间管理 ...
- 读刘未鹏老大《你应当怎样学习C++(以及编程)》
标签(空格分隔): 三省吾身 原文地址:你应当怎样学习C++(以及编程) 本人反思自己这些年在学校学得稀里糊涂半灌水. 看到这篇文章,感觉收获不少.仿佛有指明自己道路的感觉,当然真正困难的还是坚持学习 ...
- vue.js+koa2项目实战(二)创建 HeadBar 组件
elementUI界面布局 1.创建 HeadBar 组件 HeadBar.vue <template> <el-row> <el-col :span="2&q ...
- vue.js+koa2项目实战(一)创建项目和elementUI配置
前端采用vuex+element-ui: 后端采用koa2+restfulAPI+sequlize: (一)项目介绍 宠物社区 1.社区 2.好友 3.说说 4.宠粮 5.健康 (二)项目框架 1.V ...
- mysql主从只同步部分库或表
同步部分数据有两个思路,1.master只发送需要的:2.slave只接收想要的. master端: binlog-do-db 二进制日志记录的数据库(多数据库用逗号,隔开)binlog-i ...
- gulp 静态资源版本控制
package.json { "name": "gulp", "version": "0.0.1", "des ...
- 【设计模式】C++单例模式的几种写法——Java自动加载内部类对象,C++怎么破?
单例模式是最简单的设计模式,就让我像玩简单的游戏一样写下去吧. v1: 简单模式 和这个版本有过一面之缘,但不敢苟同. class Singleton { private: Singleton() { ...