」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 使用 Maven 以及 PostgreSQL 資料庫對 Java Spring Boot 應用程式進行 Docker 化

使用 Maven 以及 PostgreSQL 資料庫對 Java Spring Boot 應用程式進行 Docker 化

發佈於2024-11-06
瀏覽:820

Docker化 Spring Boot 應用程式涉及建立包含您的應用程式及其相依性的 Docker 映像。這允許您以一種可以輕鬆共享並在任何安裝了 Docker 的電腦上運行的方式打包應用程式。以下是對基於 Maven 的 Spring Boot 應用程式進行 Docker 化並在 Docker 容器中執行它的逐步說明。

第 1 步:安裝 Docker

首先,請確保 Docker 安裝在您的本機上。您可以從 Docker 官方網站下載。請按照適合您的作業系統的安裝說明進行操作。

如果完成步驟 1,請執行步驟 2

第 2 步:建立 Dockerfile

在 Spring Boot 應用程式的根目錄(pom.xml 檔案所在的位置)中,建立一個名為 Dockerfile 的文件,不帶任何檔案副檔名。該檔案將定義 Docker 映像。

這是您的 Dockerfile 的簡單範例:

Dockerizing your Java Spring Boot application with Maven, along with a PostgreSQL database

注意:您可能會在這裡遇到一些問題。嘗試解決。應該不會很大。例如> 錯誤[內部]載入docker.io/library/maven的元資料:3.8.6-openjdk-17

第 3 步:建置 Docker 映像

開啟終端機(命令提示字元或 shell)並導航至包含 Dockerfile 的目錄。執行以下命令建置 Docker 映像:

docker build -t 你的映像名稱。

將 your-image-name 替換為您想要為 Docker 映像指定的名稱。

第 4 步:驗證 Docker 映像

建置完成後,請驗證您的鏡像是否已成功建立:

docker 映像

您應該會在輸出中看到您的影像。

第五步:運行 Docker 容器

現在您可以使用以下命令來執行 Docker 容器:

docker run -p 8080:8080 你的映像名稱

此指令將容器的連接埠 8080 對應到主機的連接埠 8080。將 your-image-name 替換為您建置映像時所使用的名稱。

第 6 步:測試您的應用程式

您可以透過開啟 Web 瀏覽器並導航至 http://localhost:8080 來存取 Spring Boot 應用程式。如果一切設定正確,您應該會看到您的應用程式正在運行。

第七步:匯出 Docker 映像

要與無法存取網路的其他團隊共用 Docker 映像,您可以將映像儲存為 tar 檔案:

docker save -o your-image-name.tar your-image-name

這將建立您的 Docker 映像的 tarball,可以將其傳輸到其他團隊的 VM。

第8步:在目標機器上載入Docker映像

其他團隊收到 your-image-name.tar 檔案後,可以使用以下命令將映像載入到其 Docker 環境中:

docker load -i your-image-name.tar

第9步:在目標機器上執行Docker容器

載入鏡像後,其他團隊可以使用相同的命令運行容器:

docker run -p 8080:8080 你的映像名稱

第 10 步:存取應用程式

現在應該可以在目標電腦上透過 http://localhost:8080 存取該應用程式。

附加說明

資料庫設定: 如果您的應用程式使用 PostgreSQL,您可能需要設定 PostgreSQL 容器或確保可以從應用程式存取資料庫。您可以建立一個 Docker Compose 檔案來管理多個容器(例如,一個用於您的應用程序,一個用於 PostgreSQL)。

環境變數:如果您的應用程式需要環境變數(用於資料庫設定等),您可以使用 docker run 命令中的 -e 標誌將它們傳遞到 Docker 容器。

卷掛載:如果應用程式需要持久化資料或需要存取本機文件,請考慮使用 Docker 磁碟區。

透過執行這些步驟,您應該能夠成功 Dockerize 您的 Spring Boot 應用程式並與其他團隊共用。

謝謝,
岡仁波齊
Java憲章

版本聲明 本文轉載於:https://dev.to/kailashnirmal/dockerizing-your-java-spring-boot-application-with-maven-along-with-a-postgresql-database-2kpl?1如有侵犯,請聯絡study_golang @163.com刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3