linux下使用shell脚本自动化部署项目

在Java开发项目时常常要把正在开发的项目发布到测试服务器中去测试,通常的话是要把项目先打成war包,而后把war包发布到服务器中,关闭服务器, 最后从新启动服务器,虽然这过程不是很繁琐,但若是是多个工程都要发布的时候,发布的过程就会比较繁琐,因此福音来了……java

经过 编写shell 脚原本完成这些操做,只要执行一个shell脚本,项目就能够自动发布到服务器了,用起来仍是比较方便的。linux

第一步:在linux中安装svn。(这个能够参照另一篇博客:http://simplelife.blog.51cto.com/9954761/1729931 ),具体到这篇博客,安装svn是为了但是使用svn中的一些命令。shell

第二步:在linux安装maven。(参照:http://simplelife.blog.51cto.com/9954761/1743977 )vim

第三步:在linux中的任意一个目录下,最好本身新建一个目录,如ucenter目录tomcat

1
2
3
4
5
mkdir /home/softs/ucenter
cd ucenter
svn co   http: //svnserver/mypro/trunk   ./    #从指定的svn地址中检出代码到当前目录
  
此时须要输入一些svn的用户名和密码,输入以后肯定使用就是了。

wKiom1bKxzfzkjwPAAAcUxNv07c652.png

执行:svn co http://svnserver/mypro/trunk/ ./服务器

wKiom1bKx72jQnPjAAAvfnJA-q0440.png

此时svn中的代码就已经检出到服务器中了……maven

在当前目录下执行:svn up svn

能够更新svn中最新的代码,返回svn的版本测试

wKiom1bKyOLx4sgUAAAJaRwXX0M206.png

进入ssm-parent目录中,执行命令(maven的命令):mvn -U clean installspa

wKioL1bKyZeBDF-yAABoS0Ew_M0662.png

进入simple-ssm中执行相同的操做:

    wKiom1bKyZnBXcAaAAApq8dXAmo219.png

wKioL1bKyijC34t7AABbNe9te9o456.png

wKiom1bKye_gY72WAAApz5gd29c309.png

此时simple-ssm中就多了一个目录:target,这个工程的war包就在其中

    wKioL1bKywyB_boAAABhm20_rEQ363.png

此时项目war包已经生成了,接下来就能够将这个war复制到tomcat服务器中,而后重启服务器就能够了。

也就是最前面所说的,上述这些更新代码、打包,移动war包到服务器,重启服务器的操做均可以用一个简单的shell脚原本执行。

++++++++++++++++++++++++++++编写发布要执行的shell脚本++++++++++++++++++++++++++++++++

在ucenter目录中(随便哪一个目录,以这个目录为例)

新建ssm-parent.sh文件:

1
2
touch ssm-parent.sh
vim ssm-parent.sh

编写:

wKioL1bLwX7Rs93lAAAQ2gcYceM349.png

保存后退出。

给文件赋予权限

1
chmod  755  ssm-parent.sh

执行:

1
./ssm-parent.sh

新建simple-ssm.sh文件:

touch simple-ssm.sh

vim simple-ssm.sh

编写:

wKiom1bLwc7CwQ_nAAA236o9ZPc140.png

保存后退出。

给文件赋予权限

1
chmod  755  simple-ssm.sh

执行:

1
./simple-ssm.sh

这样就将simple-ssm工程发布完成了。

之后每次只要将代码写完以后,提交到svn中,在服务器中就能够前后执行这两个shell脚本(固然还能够有别的工程的shell脚本),就能够轻松的发布项目了,是否是很便捷!

执行:

1
2
./ssm-parent.sh
./simple-ssm.sh

到此项目时时发布就能够实现了。

相关文章
相关标签/搜索