一篇屬于技術(shù)總結(jié)類的文章,寫這篇文章,一來是為自己的一些自動(dòng)化部署做總結(jié),二來是留下一些記錄,好讓自己經(jīng)常翻翻。自動(dòng)化部署,就是對(duì)每次都需要敲的命令,每次都要做的操作,固定化,死的命令行與操作,進(jìn)行的一些shell腳本的編寫,有助于自己不用每次都去敲這些繁瑣的命令。
轉(zhuǎn)載請(qǐng)注明:自動(dòng)化部署java的war應(yīng)用到tomcat腳本|小葫蘆君
自動(dòng)化部署主要是幾個(gè)方面:
1、自動(dòng)化部署到war
2、自動(dòng)化重啟tomcat服務(wù)器,并打印日志
3、能自動(dòng)化重啟,自動(dòng)化打開日志
主要的shell命令有這些:
1、自動(dòng)化部署到war
/data/shfile/blogWeb.sh 這個(gè)是自動(dòng)部署的shell腳本
原理:通過定義好一些變量,然后逐步的執(zhí)行設(shè)定好的命令,也就是模擬自己在部署war時(shí)的一些操作。
#!/bin/bash
nowDate=`date +%Y-%m-%d`
pathProj=/data/www/tongbor/blog/web
warPathProj=/data/www/codes
warSrvOrig="$warPathProj/blogWeb-develop.war"
warSrvNew="$pathProj/ROOT.war"
echo 'enter to stop tomcat...'
pid=`ps aux|grep "java"|grep "/data/opt/blog/tomcat8_web"|awk '{printf $2}'`
kill -9 $pid
echo 'stop tomcat finished...'
rm -rf $pathProj/ROOT
rm -rf $pathProj/ROOT.war
cp $warSrvOrig $warSrvNew
echo 'copy blogWeb ROOT.war finish...'
/data/opt/blog/tomcat8_web/bin/startup.sh
sleep 5
echo 'restart tomcat8 blogWeb...'
pid=`ps aux|grep "java"|grep "/data/opt/blog/tomcat8_web"|awk '{printf $2}'`
kill -9 $pid
sleep 5
/data/opt/blog/tomcat8_web/bin/startup.sh
ln -s /data/www/tongbor/file/blogfile/main/attached /data/www/tongbor/blog/web/ROOT/attached
echo 'show logs...'
tail -1000f /data/opt/blog/tomcat8_web/logs/catalina.$nowDate.out`
2、在tomcat能啟動(dòng)的用戶目錄里面,找到環(huán)境文件:
.bash_profile
這個(gè)文件里面,可以定義一些快捷鍵
restartBlogWeb() {
echo 'restart tomcat8 blogWeb...'
pid=`ps aux|grep "java"|grep "/data/opt/blog/tomcat8_web"|awk '{printf $2}'`
kill -9 $pid
sleep 1
/data/opt/blog/tomcat8_web/bin/startup.sh
echo 'show logs...'
tail -500f /data/opt/blog/tomcat8_web/logs/catalina.$nowDate.out
}
alias rbw='restartBlogWeb'
shutdownBlogWeb(){
echo 'shutdown tomcat8 blogWeb...'
pid=`ps aux|grep "java"|grep "/data/opt/blog/tomcat8_web"|awk '{printf $2}'`
kill -9 $pid
}
alias sbw='shutdownBlogWeb'
tblogWeb(){
tail -500f /data/opt/blog/tomcat8_web/logs/catalina.$nowDate.out
}
alias tbw='tblogWeb'
alias dbw='/data/shfile/blogWeb.sh'
上面就是設(shè)置好的快捷鍵
當(dāng)我需要重新部署已經(jīng)上傳到服務(wù)器的war文件時(shí),只需要敲快捷鍵dbw,就能夠?qū)π麓虬膚ar進(jìn)行自動(dòng)部署到tomcat里面,并重啟tomcat和看到打印的日志;
當(dāng)我需要重新啟動(dòng)應(yīng)用時(shí),只需要敲快捷鍵rbw,就能馬上重啟tomcat,并查看打印的啟動(dòng)日志;
當(dāng)我不需要以上2種情況的快捷鍵,但又想看到日志時(shí),普通情況下,是敲一長(zhǎng)串的路徑,進(jìn)行tail查看,有了快捷鍵,我只需要敲快捷鍵tbw,就能馬上看到日志效果,何樂而不為呢?
轉(zhuǎn)載請(qǐng)注明:自動(dòng)化部署java的war應(yīng)用到tomcat腳本|小葫蘆君