溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用Docker如何部署war包項目

發布時間:2020-10-26 15:46:06 來源:億速云 閱讀:279 作者:Leah 欄目:開發技術

這期內容當中小編將會給大家帶來有關使用Docker如何部署war包項目,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

        使用Docker部署war,必須要用容器,我們就用tomcact容器,其實都是將war包丟到tomcat的webapps目錄下,tomcat啟動的情況下會自動解壓war包。

       一種是在Docker中安裝tomcat容器的鏡像,然后把war包丟到tomcat鏡像下webapps中即可。但是如果tomcat關閉了,其webapps下的包就會消失;二就是利用掛載,還是安裝tomcat容器的鏡像,但是不把war包丟到tomcat下的webapps中,直接創建一個外部文件夾,將這個外部文件夾跟wabapps關聯,這樣把war丟到新建的文件夾中,tomcat的webapps也能讀取到這個war包,這就是掛載。

一、安裝tomcat鏡像并啟動

1、docker下搜索tomcat鏡像,前提是docker處于啟動狀態,docker如何啟動以及如何設置開機自啟,這里就不說了

docker search tomcat

使用Docker如何部署war包項目

2、根據名字下載docker,docker pull docker.io/tomcat

使用Docker如何部署war包項目

3、啟動tomcat

 docker run -d -p 8088:8080 docker.io/tomcat

 -d表示后臺運行,-p端口映射,前面的8088是外圍訪問端口(也就是本機ip對外開放的端口),后面8080是docker容器內部的端口。

4、瀏覽器訪問,看tomcat是否啟動

使用Docker如何部署war包項目

三、將springboot項目改造成war包項目

       使用springboot習慣了,再創建一個war包項目,比較麻煩,我就新建了一個springboot項目,然后改成war項目,如果你本身是war包項目,可以忽略這一步了。

1、創建一個springboot項目,這個就不講了,需要的可以自己看我的另一篇博客:原 SpringBoot之創建并簡單使用SpringBoot

2、修改pom.xml文件

   2.1將jar改成war

使用Docker如何部署war包項目

  2.2移除內置web模塊自帶的tomcat

使用Docker如何部署war包項目

  2.3 添加servlet依賴,不然打包報錯

<dependency>
  <groupId>javax.servlet</groupId>
	<artifactId>javax.servlet-api</artifactId>
	<version>3.1.0</version>
</dependency>

   2.4 給項目加別名,在build標簽下增加finalName,就是項目名了,如果不加,項目名就是你的artifactId-version,生成的war包名稱也是artifactId-version.war,瀏覽器訪問的時候項目名字太長了。這一步看個人愛好

使用Docker如何部署war包項目

3、 修改啟動類,啟動類繼承SpringBootServletInitializer

使用Docker如何部署war包項目

四、將war包放在tomcat容器的webapps下啟動war包

1、隨便創建一個文件夾,用來存放上傳的war包,我放在了根目錄/下了

mkdir warPackage,然后將文件傳到該目錄下

使用Docker如何部署war包項目

2、將war包拷貝進tomcat容器的webapps目錄下

2.1、需要知道運行的tomcat容器的容器ID,運行docker ps

使用Docker如何部署war包項目

2.2、拷貝war包進tomcat容器的webapps目錄下,命令格式:docker cp xxx.war包路徑 容器ID:/要復制過去的目錄路徑

docker cp /warPackage/dockerProject.war e591e16899c6:/usr/local/tomcat/webapps

2.3、查看是否拷貝進去了

進入docker中的tomcat容器中:docker exec -it e591e16899c6 /bin/bash

退出容器:exit

使用Docker如何部署war包項目

3、重啟容器:docker restart +容器ID

使用Docker如何部署war包項目

4、瀏覽器訪問路徑為:你剛才訪問的端口:項目名/接口名,我的項目名是dockerProject,docker是我寫的一個簡單的Controller

使用Docker如何部署war包項目

五、使用掛載目錄啟動war包

掛載就是在服務器單獨創建一個目錄,然后映射到tomcat下的webapps的路徑,這樣tomcat就能讀取外部文件夾中的文件了

1、為了省事,我就直接使用上面創建的/warPackage文件夾

2、進行掛載目錄,運行tomcat容器,設置開機自啟:--restart=always

docker run -d -p 8088:8080 -v /warPackage/:/usr/local/tomcat/webapps --restart=always docker.io/tomcat

再通過進入tomcat目錄,能看到已經在webapps下了

使用Docker如何部署war包項目

3、瀏覽器訪問

使用Docker如何部署war包項目

上述就是小編為大家分享的使用Docker如何部署war包項目了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女