> Java > java지도 시간 > springboot의 docker 원리 분석

springboot의 docker 원리 분석

WBOY
풀어 주다: 2023-05-23 16:40:06
앞으로
896명이 탐색했습니다.

1. 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>
로그인 후 복사

2. 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에 연결됩니다. 수정 단계는 선택 사항이지만 애플리케이션에 파일 시스템

  • 이 포함된 경우에는 필요합니다. Spring Boot에서 사용하는 내장형 Tomcat 컨테이너는 기본적으로 /tmp를 작업 디렉터리로 사용하기 때문에 /tmp 디렉터리는 Docker 데이터 폴더를 유지하는 데 사용됩니다.

  • ARG는 이미지를 컴파일할 때 추가된 매개변수를 설정하고 ENV는 컨테이너를 설정하는 환경 변수

  • COPY: 로컬 파일을 컨테이너에 복사하는 것만 지원합니다. 더 강력하지만 더 복잡한 ADD도 있습니다.

  • ENTRYPOINT 컨테이너가 시작될 때 실행되는 명령

  • EXPOSE 8080 노출 미러 포트

Three , 빌드

mvn install dockerfile:build
로그인 후 복사

시작

docker run -d --name 名称 -p 对外端口:容器端口 镜像ID
로그인 후 복사

위 내용은 springboot의 docker 원리 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿