javascript
Docker化Spring Boot应用程序
你好朋友,
在本教程中,我們將看到如何對Spring Boot應用程序進行Docker化。通過dockerizing意味著我們將以Docker容器的形式運行應用程序。
以下是涉及的步驟:
1.創建一個Spring Boot應用程序
2.在您的機器上安裝Docker 3.在您的項目中創建一個Docker文件 4.使用docker文件構建Docker 5. Docker運行
讓我們一一看一下這些步驟。
請遵循我的教程“ 如何使用Spring Initializer創建Spring Boot項目”以獲取使用Spring Boot Initiailizer創建Spring Boot項目所需的步驟。
因此,一旦完成此步驟,就應該準備好在工作區中使用springBootApp項目。
2.2登錄Docker Hub。如果您沒有帳戶,請單擊創建帳戶創建一個新帳戶。
2.3在下面的屏幕上單擊Download Docker Desktop。
2.4單擊“下載Windows的Docker桌面”以下載Windows的安裝程序。
要下載Mac的安裝程序,請單擊“ Mac的Docker桌面”。
2.5請按照此處提到的步驟從Installer安裝Docker,您的Docker應該已啟動并正在運行。
來自Docker Docs
–適用于Windows的Docker桌面安裝包括:安裝提供Docker Engine ,Docker CLI客戶端, Docker Compose , Docker Machine
和Kitematic 。
–使用Docker Desktop for Windows創建的容器和映像在安裝它的機器上的所有用戶帳戶之間共享。 這是因為所有Windows帳戶都使用相同的VM來構建和運行容器。
–嵌套虛擬化方案(例如在VMWare或Parallels實例上運行Windows的Docker桌面)可能會起作用,但不能保證。
在創建docker文件之前,讓我們了解什么是docker文件以及為什么需要它。
Docker文件是文本文件,具有一組指令或命令,這些指令或命令將由Docker守護程序執行以創建Docker映像。
Docker文件示例:
來自openjdk:8 u212-b04-jdk- Stretch
COPY target / springBootApp-0.0.1-SNAPSHOT.jar springBootApp-0.0.1-SNAPSHOT.jar
展覽8080 ENTRYPOINT [“ java”,“-jar”,“ springBootApp-0.0.1-SNAPSHOT.jar”]
3.2為什么需要Docker File
通過基本執行docker文件,我們創建了一個docker映像,該映像包含運行應用程序viz所需的所有詳細信息。 應用程序代碼,系統庫,工具。現在,我們可以在安裝了docker的任何計算機上運行此映像,它將獲得相同的執行環境。說我有多個環境,我的應用程序代碼將在進入ST,ET等生產環境之前經歷現在,如果我在任何這些(ST,ET,Prod)機器上執行此docker映像,它將確保該應用程序具有相同的執行環境。
另外值得一提的是,一旦我們運行docker鏡像,它便成為了容器,我們可以通過執行以下命令來查看容器:
docker容器ls
要在Docker文件中執行命令或指令,我們需要在命令提示符下執行docker build命令,如下所示:
docker build -t <標簽名稱>
docker build命令從dockerfile和“上下文”構建docker映像。構建的上下文是位于指定PATH或URL中的一組文件。構建過程可以引用上下文中的任何文件。例如,我們的build可以使用COPY指令在上下文中引用文件。
在下面的示例中,PATH是當前目錄(點),因此將通過使用項目文件夾中的文件和文件夾(從我們執行此命令的位置)來構建上下文
docker build -t <標簽名稱>
在以下示例中,
docker build -t“ springbootapp”。
docker build命令需要從放置了docker文件的項目的根目錄執行,并且文件名必須是dockerfile(不區分大小寫)。當我們執行docker build時,docker文件中的所有指令都將被執行由一個創建一個docker鏡像,其名稱在“標簽名稱”中給出。
我們可以通過執行以下命令來檢查新創建的docker鏡像:
碼頭工人形象l s
使用URL參數,我們可以提及Github或bitbucket存儲庫的URL。然后Docker構建將遞歸地從該存儲庫中提取目錄,子目錄,文件,并將其用作構建上下文并將其發送到Docker守護程序。
docker build -t <標簽名稱> <存儲庫URL>
在這種情況下,docker將克隆遠程存儲庫,并將克隆的存儲庫用作構建上下文。
Docker run命令運行docker映像。 docker映像的運行時實例稱為docker容器。
docker run -p 8080:8080 <映像名稱>
默認情況下,容器不發布任何端口,這里我們將容器的端口8080映射到主機的端口8080。
因此,基本上,在docker運行之后,您的應用程序將啟動并作為容器運行。
通過對我們的Java應用程序進行泊塢處理,我們確保我們的應用程序在DEV,ST,ET,PR上具有相同的執行環境,以確保應用程序行為不會因應用程序環境(DEV,ST等)的更改而改變。
參考文獻:
https://docs.docker.com/
翻譯自: https://www.javacodegeeks.com/2019/08/dockerizing-spring-boot-application-2.html
總結
以上是生活随笔為你收集整理的Docker化Spring Boot应用程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 五分钟讲话稿大概需要写多少字 五分钟讲话
- 下一篇: 氢氧化钙是沉淀吗 氢氧化钙是不是沉淀