前言:为什么有这边文章呢,是源于公众号后台有一位粉丝留言,留言如下,
下面我们聊聊部署通常的几种方式?
第一种方式:纯手工作业
本地打包,通过上传部署包到服务器制定目录,启动应用程序
这种方式比较适合小白,建议新手用这种方式入门。然后慢慢切换高级操作方式
第二种方式:利用工具部署,
如Jenkins,具体的原理如下:
1.从SVN下载源码
2.服务器上打包编辑 如mvn install
3.移动部署包到制定的服务上
4.启动应用程序
第三种方式:写脚本部署,
当服务很简单的是,本人倾向于这种,省资源,简单方面,随用随改,原来和Jenkins类似下面一个脚本实例
#!/bin/bash
#make by liuuhaihua
#time 2014/7/17
#version 1.3
#upgrade the project
#################定义变量#######################
instance="tomcat_website";
tomcat_progrm="/alidata1/tomcats/tomcat_website";
bak_dir="/mnt/bak";
target_home="/home/www";
################延时函数########################
function running(){
b='';
for ((i=0;i<=100;i+=2))
do
printf "progress:[%-50s]%d%%\r" $b $i ;
sleep 0.2 ;
b=#$b ;
done
echo
}
echo "#############开始更新svn##############";
svn up;
echo "############开始执行ant打包##############";
ant dist;
echo "########开始杀死tomcat进程,请等候5秒####################" ;
ps aux | grep $instance | grep -v grep | awk '{print "kill ",$2|"bash"}' ;
running ;
ps aux | grep $instance | grep -v grep;
echo "###########开始备份###################";
mv ${tomcat_progrm}/webapps/ROOT.war ${bak_dir}/ROOT_$(date "+%Y%m%d_%H%M").war;
rm -rf ${tomcat_progrm}/webapps/ROOT* ;
echo "#################开始部署程序###################";
cp ${target_home}/website/dist/*.war ${tomcat_progrm}/webapps/ROOT.war
echo "####重启tomcat...." ;
echo ${tomcat_progrm}/bin/startup.sh ;
${tomcat_progrm}/bin/startup.sh;
echo "###########查看启动日志#########" ;
running;
tail -f ${tomcat_progrm}/logs/catalina.out ;
写完,收工!