Docker容器Tomcat部署war包


 在docker容器中使用tomcat部署war包主要包括四個步驟,創建tomcat容器、上傳war包到容器、重啟容器、訪問應用。

1.創建tomcat容器

使用docker run  -d --name cmdtomcat -p 8080:8080  tomcat命令啟動了tomcat容器,在瀏覽器輸入http://localhost:8080/可以顯示tomcat配置頁面。使用docker ps -a可以看到cmdtomcat的容器。

使用docker exec -it 6ba4ccc864bd /bin/bash命令交互式的進入tomcat容器,可以看到webapps目錄以及webapps目錄下的文件。

2.上傳war包到tomcat容器

war包是第九章打包部署用的包,為了方便演示,這里將war包放在了G:\dockerwar目錄下。docker中也可以使用cp命令完成和宿主機的文件拷貝。
Docker cp G:\dockerwar\SpringBootSwagger-0.0.1-SNAPSHOT.war  cmdtomcat:/usr/local/tomcat/webapps

3.重啟容器

使用docker restart cmdtomcat命令重啟容器,然后進入容器可以看到上面拷貝進去的SpringBootSwagger-0.0.1-SNAPSHOT.war包。

4.訪問應用

瀏覽器輸入http://localhost:8080/SpringBootSwagger-0.0.1-SNAPSHOT/swagger-ui.html即可正常顯示頁面。

5.以掛載方式啟動

上述執行有個弊端就是容器重啟后項目就會不再了,我們可以以掛載的方式啟動。
docker run -d -v G:/dockerwar/SpringBootSwagger-0.0.1-SNAPSHOT.war:/usr/local/tomcat/webapps/SpringBootSwagger-0.0.1-SNAPSHOT.war --name cmdtomcat2 -p 8081:8080 tomcat

如上圖所示,進入cmdtomcat2容器,可以看到SpringBootSwagger-0.0.1-SNAPSHOT.war已在webapps目錄下。在瀏覽器輸入http://localhost:8081/SpringBootSwagger-0.0.1-SNAPSHOT/swagger-ui.html也是正常顯示頁面。

6.小結

這里只是演示了docker部署war的基本用法,對於在tomcat容器中可能會訪問數據庫的部分還需要優化,還需要將數據庫部分容器化然后與tomcat容器關聯才能訪問數據庫。使用dockerfile部署時遇到使用COPY、ADD都無法將war拷貝到tomcat容器的webapps目錄下,使用VOLUME能掛載卷到webapps中,但重啟tomcat容器並未將war解壓,后續還需優化。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM