1. 程式人生 > >linux下使用shell腳本自動化部署項目

linux下使用shell腳本自動化部署項目

href -s itl 地址 home ref ont cin 9.png

在Java開發項目時經常要把正在開發的項目發布到測試服務器中去測試,一般的話是要把項目先打成war包,然後把war包發布到服務器中,關閉服務器, 最後重新啟動服務器,雖然這過程不是很繁瑣,但如果是多個工程都要發布的時候,發布的過程就會比較繁瑣,所以福音來了……

通過 編寫shell 腳本來完成這些操作,只要執行一個shell腳本,項目就可以自動發布到服務器了,用起來還是比較方便的。

第一步:在linux中安裝svn。(這個可以參照另外一篇博客:http://simplelife.blog.51cto.com/9954761/1729931 ),具體到這篇博客,安裝svn是為了可是使用svn中的一些命令。

第二步:在linux安裝maven。(參照:http://simplelife.blog.51cto.com/9954761/1743977

第三步:在linux中的任意一個目錄下,最好自己新建一個目錄,如ucenter目錄

1 2 3 4 5 mkdir /home/softs/ucenter cd ucenter svn co http://svnserver/mypro/trunk ./ #從指定的svn地址中檢出代碼到當前目錄 此時需要輸入一些svn的用戶名和密碼,輸入之後確定使用就是了。

技術分享

執行:svn co http://svnserver/mypro/trunk/ ./

技術分享

此時svn中的代碼就已經檢出到服務器中了……

在當前目錄下執行:svn up

可以更新svn中最新的代碼,返回svn的版本

技術分享

進入ssm-parent目錄中,執行命令(maven的命令):mvn -U clean install

技術分享

進入simple-ssm中執行相同的操作:

技術分享

技術分享

技術分享

此時simple-ssm中就多了一個目錄:target,這個工程的war包就在其中

技術分享

此時項目war包已經生成了,接下來就可以將這個war復制到tomcat服務器中,然後重啟服務器就可以了。

也就是最前面所說的,上述這些更新代碼、打包,移動war包到服務器,重啟服務器的操作都可以用一個簡單的shell腳本來執行。

++++++++++++++++++++++++++++編寫發布要執行的shell腳本++++++++++++++++++++++++++++++++

在ucenter目錄中(隨便哪個目錄,以這個目錄為例)

新建ssm-parent.sh文件:

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

編寫:

技術分享

保存後退出。

給文件賦予權限

1 chmod 755 ssm-parent.sh

執行:

1 ./ssm-parent.sh

新建simple-ssm.sh文件:

touch simple-ssm.sh

vim simple-ssm.sh

編寫:

技術分享

保存後退出。

給文件賦予權限

1 chmod 755 simple-ssm.sh

執行:

1 ./simple-ssm.sh

這樣就將simple-ssm工程發布完成了。

以後每次只要將代碼寫完之後,提交到svn中,在服務器中就可以先後執行這兩個shell腳本(當然還可以有別的工程的shell腳本),就可以輕松的發布項目了,是不是很便捷!

執行:

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

到此項目時時發布就可以實現了。

linux下使用shell腳本自動化部署項目