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

到此項目時時發佈就能夠實現了。

相關文章
相關標籤/搜索