国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

SpringBoot項目打包為Docker鏡像

IT那活兒 / 4051人閱讀
SpringBoot項目打包為Docker鏡像

點擊上方“IT那活兒”公眾號,關注后了解更多內容,不管IT什么活兒,干就完了!!!


  
Docker是一個開源的應用容器引擎,使用Docker可以實現開發環境、測試環境、生產環境的一致性。
下面介紹將SpringBoot項目打包成Docker鏡像的兩種方式



使用Dockerfile文件.生成鏡像

先將SpringBoot項目打包成jar包(這里使用示例工程docker-demo),然后放到有docker環境的服務器中。

在jar包目錄下新建Dockerfile文件,內容如下:

運行命令【docker build -t docker-demo:0.0.1 .】構建鏡像:

運行【docker images】查看docker-demo:0.0.1鏡像構建成功。

運行【docker run -d -p 8081:8081 docker-demo:0.0.1】啟動鏡像,并將docker容器的8081端口映射到宿主機的8081端口。

查看運行的容器,可以看到docker-demo:0.0.1已正常運行,且查看容器日志也正常啟動,訪問程序功能可以正常響應。



利用maven插件生成鏡像

maven是目前最流行的Java項目管理工具之一,我們也可以利用maven進行docker鏡像打包。

Dockerfile Maven是Spotify公司提供的一款maven插件,用以輔助Docker項目進行Dockerfile文件構建、標簽和發布。

首先,在pom.xml文件中引入該插件。此處定義了構建的目標、倉庫名稱、鏡像名稱、鏡像版本等信息。

在項目源碼目錄內新建Dockerfile文件,內容如圖。

接下來通過maven命令【mvn clean package】構建項目,前提本地需要有maven和docker環境,截取部分maven構建日志如下:

[INFO] --- dockerfile-maven-plugin:1.4.13:build (default) @ docker-demo ---

[INFO] dockerfile: null

[INFO] contextDirectory: /root/docker-demo

[INFO] Building Docker context /root/docker-demo

[INFO] Path(dockerfile): null

[INFO] Path(contextDirectory): /root/docker-demo

[INFO]

[INFO] Image will be built as shsnc/docker-demo:0.0.2

[INFO]

[INFO] Step 1/7 : FROM java:8

[INFO] Trying to pull repository docker.io/library/java ...

[INFO] Pulling from docker.io/library/java

[INFO] Digest: sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d

[INFO] Status: Image is up to date for docker.io/java:8

[INFO]  ---> d23bdf5b1b1b

[INFO] Step 2/7 : MAINTAINER suntt

[INFO]  ---> Using cache

[INFO]  ---> 5dc4a92a74f1

[INFO] Step 3/7 : WORKDIR /app/docker-demo

[INFO]  ---> Using cache

[INFO]  ---> fd21efce4a6e

[INFO] Step 4/7 : ARG JAR_FILE

[INFO]  ---> Running in d9e1be8b3266

[INFO]  ---> e54019a81490

[INFO] Removing intermediate container d9e1be8b3266

[INFO] Step 5/7 : ADD target/docker-demo /app/docker-demo

[INFO]  ---> 579ce6cfedd4

[INFO] Removing intermediate container 4c4d75bc4519

[INFO] Step 6/7 : EXPOSE 8081

[INFO]  ---> Running in 8adc60ec81b4

[INFO]  ---> 50ff3b856ce0

[INFO] Removing intermediate container 8adc60ec81b4

[INFO] Step 7/7 : ENTRYPOINT java -jar /app/docker-demo/docker-demo.jar

[INFO]  ---> Running in 855ffffd626ec9

[INFO]  ---> c726d26352c1

[INFO] Removing intermediate container 855ffffd626ec9

[INFO] Successfully built c726d26352c1

[INFO]

[INFO] Detected build of image with id c726d26352c1

[INFO] Building jar: /root/docker-demo/target/docker-demo-docker-info.jar

[INFO] Successfully built shsnc/docker-demo:0.0.2

[INFO] ------------------------------------------------------------------------

[INFO] BUILD SUCCESS

[INFO] ------------------------------------------------------------------------

[INFO] Total time: 40.518 s

[INFO] Finished at: 2022-07-20T10:47:52+08:00

[INFO] ------------------------------------------------------------------------

查看docker鏡像,可以看到shsnc/docker-demo:0.0.2鏡像構建成功。

啟動鏡像,由于方式一占用了宿主機8081端口,此處將容器內8081端口映射至宿主機8082端口。

查看運行中的容器,可看到方式一和方式二構建的鏡像都已成功運行,后續訪問方式和普通Java工程沒有區別,通過maven方式構建鏡像成功。


本文作者:孫濤濤(上海新炬王翦團隊)

本文來源:“IT那活兒”公眾號

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129329.html

相關文章

  • 一個網站的微服務架構實戰(1)dockerdocker-compose

    摘要:文件服務器項目為文章共享社區,少不了的就是一個存儲文章的文件服務器,包括存儲一些圖片之類的靜態資源。例如數據庫的數據文件的配置文件和文件服務器目錄。 前言 這是一次完整的項目實踐,Angular頁面+Springboot接口+MySQL都通過Dockerfile打包成docker鏡像,通過docker-compose做統一編排。目的是實現整個項目產品的輕量級和靈活性,在將各個模塊的鏡像...

    CODING 評論0 收藏0
  • springboot項目 docker部署實踐

    摘要:所以就嘗試在環境下利用阿里云倉庫完成部署。從阿里云中拉取鏡像啟動命名空間倉庫名稱容器鏡像鏡像版本號這樣就能將本地的項目打包成容器在阿里云上發布了。 網上查了下大部分boot項目部署都是在linux和docker hub環境下完成的,由于本人開發環境在windows下面,并且docker容器也是使用的docker tools,而且也沒有做docker hub的加速。所以就嘗試在windo...

    DDreach 評論0 收藏0
  • 市長信箱郵件查詢服務: 將SpringBoot應用部署到Docker

    摘要:市長信箱郵件查詢服務將應用部署到在上一章我完成了將部署到的工作和都具有能快速啟動的特性因此是一對用來部署微服務的黃金搭檔在計劃中基于的應用也將部署到之上那我們就開始行動吧將部署到上需要執行以下步驟保證打包后的可執行能正常啟動在應用中編寫鏡像 市長信箱郵件查詢服務: 將SpringBoot應用部署到Docker 在上一章, 我完成了將ES部署到Docker的工作. SpringBoot和...

    SKYZACK 評論0 收藏0
  • 使用 Docker 部署 Spring Boot項目

    摘要:項目上傳將項目上傳到華為云服務器,沒啥好說的。環境搭建建議在環境下安裝,環境搭建比較復雜且容易出錯,使用來安裝環境很方便。使用部署項目將項目復制到服務器中,進入項目路徑下進行打包測試。 項目搭建 Spring Boot 項目代碼 @RestController public class SpringBootDockerApplication { public static vo...

    venmos 評論0 收藏0
  • SpringBoot使用Docker快速部署項目

    摘要:它是目前最流行的容器解決方案。創建文件在中加入以下信息注意必須和包在同一路徑下基礎鏡像必要,代表你的項目將構建在這個基礎上面允許指定端口轉發創建一個可以從本地主機或其他容器掛載的掛載點,一般用來存放數據庫和需要保持的數據等。 1.簡介 建議閱讀本文最好對Dokcer有一些了解 首先我們先了解一下Docker是什么 Docker 屬于 Linux 容器的一種封裝,提供簡單易用的容器使用接...

    tomato 評論0 收藏0
  • Spring Boot 應用 Docker 化 《Spring Boot 2.0極簡教程》(陳光劍)

    摘要:應用化極簡教程陳光劍基于的企業級應用開發最佳實踐前面的章節中,我們都是在環境中開發運行測試應用程序。關鍵字是分布式應用微服務容器虛擬化。通常,在企業項目實踐中,會實現一套應用部署發布的自動化運維平臺工具。 Spring Boot 應用 Docker 化 《Spring Boot 2.0極簡教程》(陳光劍)—— 基于 Gradle + Kotlin的企業級應用開發最佳實踐 前面的章節中,...

    Donne 評論0 收藏0

發表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<