(一)Maven Web 项目脚本自动打包部署

前言

在工作中,经常碰到部署web项目比较繁琐的事儿,有时出现遗漏更新文件,有时失误替换了重要文件。这时我们可以考虑走捷径,借助脚本实现一键更新部署。

这里使用的案例为SVN上的web源码,实现更新部署项目。

首先在服务器安装maven

  1. 下载SVN,地址:apache-maven-3.3.9.bin.tar.gz
  2. 解压到路径 /data/apache-maven-3.3.9
  3. 修改配置文件,这里不叙述。
  4. 编辑 //etc/profile 文件
	vi /etc/profile

在结尾处增加下面两行代码

	export M2_HOME=/data/apache-maven-3.3.9
	export PATH=$PATH:$M2_HOME/bin

执行保存命令

	!wq
  1. 刷新应用profile
	source //etc/profile
  1. 测试是否安装成功
	mvn -v

找到你的web 部署所在tomcat地址

这里使用地址为:/data/web/tomcat-8082

创建更新记录文件夹

	mkdir  /data/update_web
在文件夹下首次执行下载svn web项目,创建svn元信息,保证一键更新脚本无通讯障碍。
	svn checkout svn项目地址 /data/update_web/ --username=svn账号 --password=svn密码
	#(R)eject, accept (t)emporarily or accept (p)ermanently? t

创建更新部署脚本

在目录 /data/update_web/
创建更新脚本:

	touch build.sh

赋脚本权限:

	chmod +x build.sh

编辑脚本:

	vi build.sh

添加以下内容

	tomcat=/data/web/tomcat-8082
	svn update && mvn clean package -DskipTests 

	if [ $? -eq 0 ];then
	    # 部署到tomcat
	    rsync -av --progress --delete \
	      --exclude="login.jsp" \
	      --exclude="WEB-INF/web.xml" \
	      target/szsys_dispose $tomcat/webapps/ 
	    
	    # 重启tomcat
	    pid=`ps -ef | grep 8082 | grep -v grep | awk '{print $2}'`
	    if [ ! -z $pid ];then
	        kill -9 $pid
	    fi
	
	    set -m
	    $tomcat/bin/startup.sh
	
	    tail -f $tomcat/logs/catalina.out
	fi

参数说明
脚本里面的tomcat=为tomcat路径, --exclude为不更新文件, target/szsys_dispose为项目打包名称,8082 为tomcat端口。

保存脚本

执行测试

	./build.sh

你可能感兴趣的:(记录)