项目打包有不少种方式,无论是eclipse的export仍是mvn的package,最终目的就是把编译后的项目丢到服务器的tomcat下。咱们要部署代码到两台上游服务器和两台下游服务器,感受比较麻烦,最好的办法是用jenkis来了自动化构建,不过如今也没资源去安装部署一台jenkis了,因此就本身写了一个shell,稍微减小一点工做量,起个名字叫reploy.shcss
#! /bin/sh p1path=/home/scc/upstream001/apache-tomcat-7.0.67 p2path=/home/scc/upstream002/apache-tomcat-7.0.67 p1webappspath=$p1path/webapps p2webappspath=$p2path/webapps p1binpath=$p1path/bin p2binpath=$p2path/bin temppath=$(pwd) echo "备份原项目:路径"$p1webappspath"……" cd $p1path zip -r "webapps"-$(date +%Y%m%d'-'%H%M%S).zip webapps echo "备份原项目:路径"$p2webappspath"……" cd $p2path zip -r "webapps"-$(date +%Y%m%d'-'%H%M%S).zip webapps cd ~ echo "进入部署……" while true; do echo "输入当前目录下要部署的文件名称(如:sss.zip):" read filename if [[ $filename =~ ".zip" ]];then echo "文件格式验证经过" if [ ! -f "$temppath/$filename" ];then echo "未找到$temppath/$filename,请查看是否上传!肯定上传后输入[Y]或[N]退出程序:" read isupload if [[ $isupload = 'Y' ]];then continue; else echo "程序退出" exit 1; fi else echo "文件正确!开始解压……" break; fi; else echo "格式不正确请从新输入!" fi; done zip -d $temppath/$filename *log4j.prperties zip -d $temppath/$filename *.js zip -d $temppath/$filename *.css echo "解压到"$p1webappspath unzip $temppath/$filename -d $p1webappspath -x #unzip $temppath/$filename -d $p1webappspath -x *log4j.prperties *redisconfig.properties echo "解压到"$p2webappspath unzip $temppath/$filename -d $p2webappspath -x *log4j.prperties *.js *.css #unzip $temppath/$filename -d $p2webappspath -x *log4j.prperties *redisconfig.properties cd $p1webappspath unzip Desktop.zip cd $p2webappspath unzip Desktop.zip echo "解压完毕~!开始重启tomcat……" cd $p1binpath; temppath=$(pwd) if [[ $temppath = $p1binpath ]];then ./shutdown.sh ./startup.sh echo 'p1重启完毕……' else echo $p1binpath"文件路径不存在" fi cd $p2binpath; temppath=$(pwd) if [[ $temppath = $p2binpath ]];then ./shutdown.sh ./startup.sh echo 'p2重启完毕……'; else echo $p2binpath"文件路径不存在" fi echo 'tomcat所有重启完毕~!';
这样只须要打包一下本地tomcat的项目,而后上传运行sh文件就能够自动部署到对应目录下了,不过发现shell结尾启动tomcat的地方有点问题,之后再调吧。对了,还要吧本地配置的host也配置到tomcat服务器上去java
172.16.60.101 zookeeper.sustainable.com 172.16.60.102 redis.sustainable.com 172.16.60.103 mongo.sustainable.com 172.16.60.104 nginx.sustainable.com 172.16.60.105 tomcat-upstream.sustainable.com 172.16.60.106 tomcat-downstream.sustainable.com 172.16.60.107 gitlab.sustainable.com 172.16.60.108 activeMq.sustainable.com 172.16.60.100 mysql.sustainable.com 172.16.60.104 www.sustainable.com
同时启动zookeeper、mongo、redis、mysql、nginx。mysql
首先部署下游代码,将sustainable-service打包上传到服务器,执行reploy.sh而后启动tomcatnginx
而后部署上游代码,将sustainable-interactive打包上传到服务器,执行reploy.sh而后启动tomcatgit
最后确保nginx已正确配置并启动。
web
浏览器输入http://www.sustainable.com/sustainable-interactive/UserController/toLogin.do redis
如今清空mysql和redis以及mongo的数据,咱们来注册一条数据。用户名admin,密码adminsql
数据添加成功,如今登陆一下看看
shell
信息无误,还可使用dubbo的一个admin系统来查看一些服务状态等,这里就不演示了。
apache