服务器通过mavn部署项目至tomcat脚本

最近在阿里云Ubuntu14上开发一个小项目,maven项目通过上面安装的svn服务器管理,部署在tomcat上,通过网上搜索资料和自己的总结,完成了这目前感觉还是挺不错的一键部署脚本。
闲话少说,上脚本

#/bin/sh
unset GIT_DIR

PRJ_BASE=/data/serverCode
CODE_BASE=${PRJ_BASE}/repositoryServer/project
OLD_REPLACE_PATH=${PRJ_BASE}/replaceFile
CONFIG_PATH=${CODE_BASE}/src/main/resources
REPLACE_PATH=/usr/local/tomcat/file
SHELL_PATH=/usr/local/tomcat/apache-tomcat7/bin
DEPLOY_BASE=/usr/local/tomcat/apache-tomcat7/webapps

echo "------------------- 开始部署项目 ---------------------------------------"

cd ${PRJ_BASE}

echo "------------------- 1.从SVN检出项目  -----------------------------------"

svn co --username admin --password admin svn://localhost/repositoryServer --force --no-auth-cache 

echo "------------------- 备份版本库配置文件 ----------------------------------"

cp -rf ${CONFIG_PATH}/jdbc.properties ${OLD_REPLACE_PATH}
cp -rf ${CONFIG_PATH}/log4j2.xml ${OLD_REPLACE_PATH}

echo "------------------- 替换生产配置文件 ------------------------------------"

cp -rf ${REPLACE_PATH}/jdbc.properties ${CONFIG_PATH}
cp -rf ${REPLACE_PATH}/log4j2.xml ${CONFIG_PATH} 

echo "------------------- 删除target下的文件 ---------------------------------"

rm -rf ${CODE_BASE}/target/*

echo "------------------- 2.通过mvn的package命令打war包 ----------------------"

cd ${CODE_BASE}

mvn package

echo "------------------- 删除tomcat下老文件 --------------------------------"

rm -rf ${DEPLOY_BASE}/project/

echo "------------------- 拷贝war包到部署目录 --------------------------------"

cp ${CODE_BASE}/target/project.war ${DEPLOY_BASE}/

echo "------------------- 还原版本库配置文件 ---------------------------------"

cp -rf ${OLD_REPLACE_PATH}/jdbc.properties ${CONFIG_PATH}
cp -rf ${OLD_REPLACE_PATH}/log4j2.xml ${CONFIG_PATH} 

echo "------------------- 停止tomcat服务 ------------------------------------"

${SHELL_PATH}/shutdown.sh

echo "------------------- 启动tomcat服务 ------------------------------------"

${SHELL_PATH}/startup.sh

echo "------------------- 部署项目结束 ---------------------------------------"
exit 0

脚步命令基本都不复杂,且注释挺清晰的,主要解释下开头的几个关键路径

svn导出项目根目录:
PRJ_BASE=/data/serverCode
项目路径(repositoryServer是仓库名称,project就是maven项目的名称)
CODE_BASE=/data/serverCode/repositoryServer/project
保存替换前文件的路径(svn检出前需要把替换的文件替换回去,防止下次检出时有冲突文件)
OLD_REPLACE_PATH=/data/serverCode/replaceFile
检出项目中关键配置文件的路径
CONFIG_PATH=/data/serverCode/repositoryServer/project/src/main/resources
生产环境配置文件(主要是jdbc文件和log4j文件)
REPLACE_PATH=/usr/local/tomcat/file
tomcat启动,停止脚本
SHELL_PATH=/usr/local/tomcat/apache-tomcat7/bin
tomcat部署war路径
DEPLOY_BASE=/usr/local/tomcat/apache-tomcat7/webapps

发布了22 篇原创文章 · 获赞 15 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/niaoer2010/article/details/74188336
今日推荐