docker-執行tomcat服務

一只爱阅读的程序员發表於2024-03-27

環境說明

linux系統版本:lsb_release -a

docker 版本: docker -v

不同的作業系統以及軟體版本,可能會遇到不一樣的問題,一定要注意版本問題。

.1.tomcat映象版本選擇。

進入docker官網搜尋 8-jdk8

自己選擇的版本如下

docker pull tomcat:8-jdk8

可以正確拉取。

.2.啟動tomcat 服務。

docker run --name tomcat8 -d -p 8086:8080 tomcat:8-jdk8

引數解釋:

docker run 表示執行docker容器

--name tomcat8 給容器取一個名字

-d 表示以後臺模式啟動

-p 8086:8080 表示將宿主機上的8086埠對映到容器中的8080

tomcat:8-jdk8 表示以某個映象啟動tomcat服務,不指定的話,一般會以最新映象啟動,沒有機會自動去下載映象。

.3.登入阿里雲伺服器,開啟8086埠。

控制檯-->我的資源-->點選(例項)進入-->安全組-->安全組詳情-->手動新增(入站規則)

.4.訪問測試。

404錯誤。

進入容器內檢視,發現webapps目錄下面為空,需要自己新增需要執行的war包。

docker exec -it tomcat8 /bin/bash

根據網友的建議,可以把 webapps.dist目錄下面的內容複製到webapps目錄中。

執行命令

rm -rf weapps

mv webapps.dist webapps

直接將webapps.dist目錄覆蓋掉 webapps 目錄

.5.重新啟動tomcat服務,再次訪問。

如果想執行某一個war包,只需要把war包放在/opt/u01/exam/tomcat 路徑下,執行如下的命令即可。

docker run --name tomcat8 \

-d \

-v /opt/u01/exam/tomcat:/usr/local/tomcat/webapps \

-p 8086:8080 tomcat:8-jdk8

引數解釋:

-v /opt/u01/exam/jenkins:/usr/local/tomcat/webapps 表示將宿主機上的目錄掛載到tomcat容器下面的/usr/local/tomcat/webapps目錄中

參考博文:

https://cloud.tencent.com/developer/article/2225836

https://cloud.tencent.com/developer/article/1834280

相關文章