【Tomcat】shell 部署配置 war包
使用shell 一次执行,将项目中的war包的配置全部修改
#!/bin/bash
#-----------------------------------------------
# FileName: deployWAR.sh
# Reversion: 1.5
# Date: //
# Author: zhengwenqiang
# Email: zhengwenqiang@bonc.com.cn
# Description: change the properties of the essential configuration file, it means that before you startup tomcat to run those three apps etc cas,portal,security
# it's vital to run this script which bring the proccess running normally.
# Notes: If you are going execute this script on linux, you should run the command "sed -i 's/\r//g' getwar.sh"
# to delete invalid character which cause character error.
# Changes: solve the error caused by default-schema configuration.
# Copyright: (c) zhengwenqiang
# License: GPL
#-----------------------------------------------
#cd `)`
# configure Cas
conf='conf.properties'
] ; then
conf=$
fi
if [ -f $conf ] ; then
#cat -A conf.properties | grep -E -v '^\^?M' | sed 's/\^M\$$//g'>conf.sh
#cat conf.properties | grep -E -v '^\^?M' | tr -d '\r' | tee conf.sh
[ -f conf.sh ] && rm -f conf.sh
cat $conf | grep -E -v '^\^?M' | tr -d '\r'>conf.sh
chmod u+x,u+w conf.sh
sed -i '1i \#\!\/bin\/bash' conf.sh && chmod u-w conf.sh
source conf.sh
else
echo "conf.properties not found">install.log
exit ;
fi
if [ -z $cas_ip ] ; then
# cas_ip=`ip addr | tr -d 'inet '`
cas_ip=`ip addr show | | sed 's/[^0-9\.]//g'`
fi
if [ -z $security_ip ] ; then
security_ip=$cas_ip
fi
if [ -z $portal_ip ] ; then
portal_ip=$security_ip
fi
cd webapps
if [ $casEnable == "true" ] ; then
[ -d cas ] && rm -rf cas
cas_war=``
if [ -f ${cas_war} ] ; then
mkdir cas && unzip ${cas_war} -d cas
cas_pros='cas/WEB-INF/cas.properties'
sed -i "s/CAS_IP:CAS_PORT/${cas_ip}:${cas_port}/g" ${cas_pros}
sed -i "s/PORTAL_IP:PORTAL_PORT/${portal_ip}:${portal_port}/g" ${cas_pros}
sed -i "s/SE_IP:SE_PORT/${security_ip}:${security_port}/g" ${cas_pros} cas/WEB-INF/classes/bonc-security-base.properties
sed -r "s/DB_IP:DB_PORT([/:])DB_NAME/${db_ip}:${db_port}\1${db_name}/g" -i ${cas_pros}
case $db_type in
"mysql")
sed -r '/MySQLDialect\r?$/s/^#//g' -i ${cas_pros}
sed -r '/com.bonc.jdbc.MysqlDriver$/,+3s/^#//g' -i ${cas_pros}
sed -r '/com.mysql.jdbc.Driver$/,+3s/^#//g' -i ${cas_pros}
;;
"oracle")
sed -r '/Oracle10gDialect\r?$/s/^#//g' -i ${cas_pros}
sed -r '/com.bonc.jdbc.OracleDriver$/,+4s/^#//g' -i ${cas_pros}
sed -r '/oracle.jdbc.driver.OracleDriver$/,+4s/^#//g' -i ${cas_pros}
;;
*)
;;
esac
sed -i "s/DB_USERNAME/${db_username}/g" ${cas_pros}
sed -i "s/DB_PASSWD/${db_passwd}/g" ${cas_pros}
unset ${cas_pros}
fi
[ ${cas_war} != "cas.war" ] && mv ${cas_war} cas.war
fi
if [ $portalEnable == "true" ] ; then
# Configure Portal
[ -d portal ] && rm -rf portal
portal_war=``
if [ -f ${portal_war} ] ; then
mkdir portal && unzip ${portal_war} -d portal
for portal in 'portal/WEB-INF/web.xml' 'portal/WEB-INF/classes/bonc-security-base.properties' 'portal/WEB-INF/classes/cfg.db.deploy.properties'
do
sed -i "s/CAS_IP:CAS_PORT/${cas_ip}:${cas_port}/g" $portal
sed -i "s/PORTAL_IP:PORTAL_PORT/${portal_ip}:${portal_port}/g" $portal
sed -i "s/SE_IP:SE_PORT/${security_ip}:${security_port}/g" $portal
sed -r "s/DB_IP:DB_PORT([/:])DB_NAME/${db_ip}:${db_port}\1${db_name}/g" -i $portal
sed -i "s/DB_USERNAME/${db_username}/g" $portal
sed -i "s/DB_PASSWD/${db_passwd}/g" $portal
done
case $db_type in
"mysql")
sed -r '/^#?database.type=mysql$/,+4s/^#//g' -i 'portal/WEB-INF/classes/cfg.db.deploy.properties'
sed -r '/MySQL5Dialect$/s/^#//g' -i 'portal/WEB-INF/classes/cfg.db.deploy.properties'
sed -i "s/DB_SCHEMA/${db_name}/g" 'portal/WEB-INF/classes/cfg.db.deploy.properties'
;;
"oracle")
sed -r '/^#?database.type=oracle$/,+5s/^#//g' -i 'portal/WEB-INF/classes/cfg.db.deploy.properties'
sed -r '/Oracle10gDialect$/s/^#//g' -i 'portal/WEB-INF/classes/cfg.db.deploy.properties'
sed -i "s/DB_SCHEMA/${db_username}/g" 'portal/WEB-INF/classes/cfg.db.deploy.properties'
;;
*)
;;
esac
fi
fi
# Configure Security
if [ $securityEnable == "true" ] ; then
[ -d security ] && rm -rf security
security_war=``
if [ -f ${security_war} ] ; then
mkdir security && unzip ${security_war} -d security
for security in 'security/WEB-INF/web.xml' 'security/WEB-INF/classes/bonc-security-base.properties' 'security/WEB-INF/classes/cfg.db.deploy.properties' 'security/WEB-INF/classes/bonc-security.properties'
do
sed -i "s/CAS_IP:CAS_PORT/${cas_ip}:${cas_port}/g" $security
sed -i "s/SE_IP:SE_PORT/${security_ip}:${security_port}/g" $security
sed -r "s/DB_IP:DB_PORT([/:])DB_NAME/${db_ip}:${db_port}\1${db_name}/g" -i $security
sed -i "s/DB_USERNAME/${db_username}/g" $security
sed -i "s/DB_PASSWD/${db_passwd}/g" $security
done
case $db_type in
"mysql")
sed -r '/^#?database.type=mysql$/,+4s/^#//g' -i 'security/WEB-INF/classes/cfg.db.deploy.properties'
sed -r '/MySQL5Dialect$/s/^#//g' -i 'security/WEB-INF/classes/cfg.db.deploy.properties'
sed -r '/^#?database.type=mysql$/,+4s/^#//g' -i 'security/WEB-INF/classes/bonc-security.properties'
sed -i "s/DB_SCHEMA/${db_name}/g" 'security/WEB-INF/classes/cfg.db.deploy.properties'
;;
"oracle")
sed -r '/^#?database.type=oracle$/,+5s/^#//g' -i 'security/WEB-INF/classes/cfg.db.deploy.properties'
sed -r '/Oracle10gDialect$/s/^#//g' -i 'security/WEB-INF/classes/cfg.db.deploy.properties'
sed -r '/^#?database.type=oracle$/,+4s/^#//g' -i 'security/WEB-INF/classes/bonc-security.properties'
sed -i "s/DB_SCHEMA/${db_username}/g" 'security/WEB-INF/classes/cfg.db.deploy.properties'
;;
*)
;;
esac
fi
fi
【Tomcat】shell 部署配置 war包的更多相关文章
- Docker实现运行tomcat并部署项目war包,并实现挂载目录
之前写的有点乱,现在再来整理一下docker的简单部署运行 借鉴博客:https://blog.csdn.net/qq_32351227/article/details/78673591 一.dock ...
- Spring Boot取消默认tomcat启动,打成war包发布到服务器运行
一.设置打包方式 在pom.xml中设置打包格式 <packaging>war</packaging> 二.取消Spring Boot的tomcat <!--部署成war ...
- intellij idea tomcat 启动不生成war包
intellij idea tomcat 启动不生成war包 想把项目打包成war包做测试,但是按照之前的方法居然没有成功导出war包,犯了很低级的错误,特此记录. (1)首先在Project Str ...
- Tomcat上进行项目部署与WAR包含义
一.WAR包 1.与JAR包类似,是将java类(编译好的.class)和Web资源,压缩后生成压缩包. 2. 与JAR相比,多了WEB-INF文件夹,其它多出来的内容基本都是Web资源 WEB-IN ...
- Tomcat访问控制及站点部署(以WAR包形式上传)!(重点)
访问控制 首先安装好jdk以及apache-tomcat并能访问tomcat网页 点击server status了解服务状态会报403的错误 第一步:修改user.xml配置文件 [root@loca ...
- tomcat运行springboot项目war包
以最简单的spring boot demo项目来演示如何发布项目war包到tomcat,并成功运行(有很多小伙伴会出现404错误) 一.准备一个最简单的demo项目 在IDEA中新建一个项目,一直ne ...
- springboot项目部署(war包)
将springboot项目打包成war,并且部署到tomcat.比较麻烦,自己踩的坑也比较多.算了一下,找bug的时间,有两天熬到凌晨2点. 修改pom.xml使得打包成war <groupId ...
- Spring Boot 2 构建可部署的war包
默认情况下Spring Boot使用了内嵌的Tomcat服务器,项目最终被打成jar包运行,每个jar包可以被看作一个独立的Web服务器.传统的Web开发,一般会将Web应用打成一个war包,然后将其 ...
- linux中部署jenkins(war包)及jenkins忘记登录账号密码
未登录状态 登录状态 一:部署jenkins(war包) 1.直接下载war包jenkins.war,下载地址https://jenkins.io/download 2.将下载的war包放到服务器上t ...
随机推荐
- Jersey +jetty 实现微服务(一)
微服务: 传输协议基本都是http,数据序列化,协议层目前protocol buffer,Json, xml,Java序列化,最多使用Json.实现以上二点并不难,spring 就可以,但spr ...
- 新篇章之我的java学习之路下
昨天写下了人生的第一篇博客,今天接着写我的java学习之路有关开发及框架的学习过程. 想要学好java语言,只学习一些java的基本语法对实际开发中的用处还是不大的,所以我们还要掌握一些有关javaW ...
- Ambari安装之部署单节点集群
前期博客 大数据领域两大最主流集群管理工具Ambari和Cloudera Manger Ambari架构原理 Ambari安装之Ambari安装前准备(CentOS6.5)(一) Ambari安装之部 ...
- 关于华为P9手机的解锁、刷Recovery、获取Root、安装Busybox,以及升级降级的全过程(和一些错误的解决方法)
我有一部华为P9手机,型号EVA-TL00,属于移动定制机.用了半年多了,想给手机添加一些功能,发现有些功能必须Root之后才能用代码实现,所以动了Root的打算. 一.手机解锁.(不解锁则无法对手机 ...
- 快速了解cpu、核与线程
作为一个后台开发人员,我想有必要了解这些基础知识.如果本文有不严谨或者疏忽的地方,请指正. cpu与核心 物理核 物理核数量=cpu数(机子上装的cpu的数量)*每个cpu的核心数 虚拟核 所谓的4核 ...
- MS MDS系列之MDS层次结构(Hierarchy)
在Master Data Services中,Hierarchy的作用主要用于: 对同属性成员进行分组 聚合成员用于分析和报告输出 写在开始:显示层次结构(Explicit Hierarchy)即将在 ...
- (转)OGNL表达式介绍
OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(Expression Language,简称为EL),通过它简单一致的表达式语法,可以存 ...
- php 设计模式之策略模式
策略模式:定义算法,并将其封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户. 步骤:1.抽象策略角色:定义接口或抽象类 2.具体策略角色:实现该接口(抽象类),即具体的算法实现 ...
- iOS imageio nsurlsession 渐进式图片下载
一.图片常用加载格式分两种 一般线性式 和交错/渐进式 自上而下线性式 先模糊再清晰 就概率上而言线性式使用最多,应为他所占空间普片比渐进式小.而这两种方式对于app端开发人员无需关心,这种图片存储格 ...
- Android中的内容提供者
Android中的内容提供者 为什么需要内容提供者 为了跨程序访问数据.试想如果在App-1中创建了一个私有数据库,App-2是不能直接访问的.因为权限不够,虽然可以使用chmod 777来修改权限, ...