溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何在Docker容器中部署war包項(xiàng)目

發(fā)布時(shí)間:2020-06-02 11:36:35 來源:億速云 閱讀:1699 作者:Leah 欄目:系統(tǒng)運(yùn)維

如何在Docker容器中部署war包項(xiàng)目?相信大部分人都還不知道怎么安裝部署war包項(xiàng)目,為了讓大家學(xué)會(huì),給大家總結(jié)了這篇文章。

部署方法

1.在Docker中安裝tomcat容器的鏡像,然后把war包丟到tomcat鏡像下webapps中即可。但是如果tomcat關(guān)閉了,其webapps下的包就會(huì)消失。
2.利用掛載,還是安裝tomcat容器的鏡像,但是不把war包丟到tomcat下的webapps中,直接創(chuàng)建一個(gè)外部文件夾,將這個(gè)外部文件夾跟wabapps關(guān)聯(lián),這樣把war丟到新建的文件夾中,tomcat的webapps也能讀取到這個(gè)war包,這就是掛載。

操作環(huán)境:

1.已關(guān)閉防火墻,安全性
2.已經(jīng)安裝docker容器
3.宿主機(jī)centos 7系統(tǒng)
4.項(xiàng)目已打好war包
5.tomcat相關(guān)配置文件已準(zhǔn)備好

部署過程

1.搜索tomcat鏡像

docker search tomcat

如何在Docker容器中部署war包項(xiàng)目

2.下載tomcat鏡像

docker pull tomcat

如何在Docker容器中部署war包項(xiàng)目

3.查看鏡像

docker images

如何在Docker容器中部署war包項(xiàng)目

4.啟動(dòng)容器

docker run -d -p 8088:8080 tomcat &

排坑過程

如果發(fā)現(xiàn)網(wǎng)頁無法訪問,返回404

原因:下載的tomcat鏡像有問題,容器中的webapps文件夾為空,故無法訪問
嘗試以下步驟:
docker ps

如何在Docker容器中部署war包項(xiàng)目

docker exec -it 8126cd702e4b /bin/bash  #進(jìn)入容器
rm -rf webapps  #刪除空文件webapps
mv webapps.dist webapps  #更換webapps文件

網(wǎng)頁驗(yàn)證

如何在Docker容器中部署war包項(xiàng)目

部署war包項(xiàng)目

第一種方法:war包拷貝到容器中

1.把war包和配置文件拷貝到宿主機(jī)

如何在Docker容器中部署war包項(xiàng)目

2.拷貝到docker容器里面

docker cp admin.war 834273c974f2:/usr/local/tomcat/webapps
docker cp context.xml 834273c974f2:/usr/local/tomcat/conf

3.重啟容器

docker restart 2d9a7cdacc8b

4.網(wǎng)頁驗(yàn)證:

如何在Docker容器中部署war包項(xiàng)目

第二種方法:掛載共享目錄

1. 創(chuàng)建掛載目錄

mkdir  /root/warPackage

2.上傳war包到 /root/warPackage

3. 掛載

docker  run  -it  -v  /root/warPackage/:/usr/local/tomcat/webapps/ /bin/bash
(-v (掛載) 虛擬機(jī)目錄  容器目錄)

4.查看掛載

宿主機(jī)查看:
cd /root/warPackage
ls

如何在Docker容器中部署war包項(xiàng)目

容器內(nèi)查看:
docker exec -it ecf6b6baa517 /bin/bash
cd webapps
ls

如何在Docker容器中部署war包項(xiàng)目

若此時(shí)網(wǎng)頁無法訪問,可嘗試下面解決方法:

docker exec -it ecf6b6baa517 /bin/bash   #進(jìn)入容器
cd webapps
mv webapps webapps1   #重命名,目前容器運(yùn)行,無法刪除,只能改名字
mv webapps.dist webapps  #替換webapps文件
exit   #退出容器
docker  run  -it  -v  /root/warPackage/:/usr/local/tomcat/webapps/ /bin/bash    
#重新掛載

1.新下載的tomcat鏡像若啟動(dòng)無法訪問,要參考排坑過程,若正常,可忽略。
2.掛載的war包路徑可自定義,若無法訪問,也可參考上面方法。
3.這里介紹的2種方法,可以根據(jù)公司需要,自行選擇使用。

看完這篇文章,你們學(xué)會(huì)在Docker容器中部署war包項(xiàng)目的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI