首頁 > Java > java教程 > 主體

springboot中docker的原理分析

WBOY
發布: 2023-05-23 16:40:06
轉載
849 人瀏覽過

一、新增maven配置

<properties>
    <docker.image.prefix>ms4t</docker.image.prefix>
  </properties>

  <build>
    <finalName>eureka</finalName>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>com.spotify</groupId>
        <artifactId>dockerfile-maven-plugin</artifactId>
        <version>1.3.6</version>
        <configuration>
          <repository>${docker.image.prefix}/${project.artifactId}</repository>
          <buildArgs>
            <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
          </buildArgs>
        </configuration>
      </plugin>
    </plugins>
  </build>
登入後複製

二、建立Dockerfile

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ARG JAR_FILE
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
登入後複製

參數解說:

  • #FROM : 需要一個基礎鏡像,可以是公共的或私有的。

  • 後續建置會基於此映像,若同一個Dockerfile建立多個映像時,可以使用多個FROM指令

  • VOLUME 配置一個具有持久化功能的目錄,主機/var/lib/docker 目錄下建立了一個臨時文件,並連結到容器的/tmp。改步驟是可選的,如果涉及到檔案系統的應用就很有必要了

  • 。 /tmp目錄用來持久化到Docker 資料資料夾,因為Spring Boot 使用的內嵌Tomcat 容器預設使用/tmp 作為工作目錄

  • ARG 設定編譯鏡像時加入的參數, ENV 是設定容器的環境變數

  • COPY:只支援將本機檔案複製到容器,還有一個ADD更強大但複雜點

  • ENTRYPOINT 容器啟動時執行的命令

  • EXPOSE 8080 暴露的鏡像連接埠

EXPOSE 8080 暴露的鏡像連接埠

##三、建置

###
mvn install dockerfile:build
登入後複製
######四、啟動######
docker run -d --name 名称 -p 对外端口:容器端口 镜像ID
登入後複製

以上是springboot中docker的原理分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板