SpringBoot 가 Docker 미 러 를 구축 하 는 세 가지 방식 을 자세히 설명 합 니 다.

본 고 는 Maven 을 통 해 SpringBoot 응용 구 조 를 Docker 미 러 로 만 드 는 세 가지 기술 을 소개 한다.
(1)spring-boot-maven-plugin 에 내 장 된 build-image 를 사용 합 니 다.
(2)Google 의 jib-maven-plugin 을 사용 합 니 다.
(3)dockerfle-maven-plugin 을 사용 합 니 다.
Spring Boot 응용 프로그램
실천 을 편리 하 게 하기 위해 서 는 Spring Boot 프로젝트 가 필요 합 니 다.
데모 항목 주소:
https://github.com/davelms/medium-articles/tree/master/spring-maven-docker
프로젝트 환경:
  • Java 11
  • Maven 3.6.3
  • mvn package를 사용 하면 jar 패 키 지 를 정상적으로 구축 할 수 있 습 니 다.
    정상적으로 실행 할 수 있 습 니 다:
    
    java -jar target/demo-application-0.0.1-SNAPSHOT.jar
    테스트 페이지:
    http://localhost:8080/hello

    데모 프로젝트 OK,미 러 를 구축 하 는 세 가지 방법 을 실천 해 보 겠 습 니 다.
    1 Spring Boot maven 플러그 인의 build-image
    Spring Boot 는 Docker 미 러 를 구축 하 는 플러그 인 을 미리 설 치 했 습 니 다.pom.xml 에 있 는 spring-boot-starter-parent 이기 때문에 변경 할 필요 가 없습니다.
    Dockerfile 을 쓸 필요 도 없고 다른 신경 쓸 필요 도 없습니다.plugin 은 모두 당신 을 도와 주 었 습 니 다.예 를 들 어 Spring 이 제안 한 안전,메모리,성능 등 문제 입 니 다.
    간단 한 실행 만 필요 합 니 다:
    
    mvn spring-boot:build-image
    실행 이 완료 되면 성공 알림 정 보 를 볼 수 있 습 니 다:

    용기 테스트 실행:
    
    docker run -p 9090:8080 -t demo-application:0.0.1-SNAPSHOT
    메모:여기 비 친 이 컴퓨터 포트 는9090입 니 다.

    2 jib-maven-plugin
    Jib 는 Docker 미 러 를 만 드 는 데 사용 되 는 Maven 과 Gradle 플러그 인 입 니 다.
    이 플러그 인 은 매우 뚜렷 한 특징 이 있 습 니 다.로 컬 에 Docker 를 설치 할 필요 가 없습니다.이것 은 지속 적 인 통합 에 매우 편리 합 니 다.Jib 는 지정 한 Docker 창고 로 직접 보 낼 수 있 습 니 다.
    Jib 역시 Dockerfile 을 쓸 필요 가 없다.
    사용 하기에 도 매우 편리 합 니 다.코드 를 바 꿀 필요 도 없고 pom.xml 를 바 꾸 지 않 아 도 됩 니 다.
    실행:
    
    mvn compile com.google.cloud.tools:jib-maven-plugin:2.3.0:dockerBuild
    mvn compile
    우리 가 잘 아 는 maven 컴 파일 명령 입 니 다.
    com.google.cloud.tools:jib-maven-plugin:2.3.0
    Jib 플러그 인 사용 을 지 정 했 습 니 다.
    dockerBuild
    Jib 플러그 인의 실행 목표 입 니 다.dockerBuildJib 가 로 컬 에 설 치 된 Docker 를 사용 하도록 지정 하 였 습 니 다.
    실행 이 완료 되면 성공 알림 정 보 를 볼 수 있 습 니 다:

    용기 테스트 시작:
    
    docker run -p 9091:8080 -t demo-application:0.0.1-SNAPSHOT
    메모:여기 비 친 이 컴퓨터 포트 는9091입 니 다.

    3 dockerfile-maven-plugin
    이 플러그 인 은 Dockerfile 을 써 야 합 니 다.Domo 프로젝트 에 준비 가 되 어 있 습 니 다.
    Dockerfile 은 프로젝트 의 루트 디 렉 터 리 에 두 고 pom.xml 와 함께 있어 야 합 니 다.

    그 다음 에 pom.xml 에 창고,tag 태그,그리고 위 Dockerfile 에서 정의 한JAR_FILE설정 을 추가 해 야 합 니 다.

    실행mvn package시 자동 으로 미 러 를 구축 합 니 다.실행 이 완료 되면 알림 정 보 를 볼 수 있 습 니 다.

    용기 실행:
    
    docker run -p 9092:8080 -t demo-application:0.0.1-SNAPSHOT
    메모:매 핑 된 이 컴퓨터 포트 는9092입 니 다.

    작은 매듭

    이 세 가지 중에서 가장 편리 한 것 은 스프링 부 트 원생 방식 으로 아무것도 직접 만 들 필요 없 이 바로 사용 할 수 있다.
    가장 특징 적 인 것 은 Jib 입 니 다.로 컬 에 Docker 를 설치 하지 않 아 도 지정 한 창고 로 직접 보 낼 수 있 고 사용 하기 도 간단 합 니 다.
    가장 번 거 로 워 보 이 는 것 은 dockerfile-maven-plugin 플러그 인 입 니 다.Dockerfile 을 써 야 하고 설정 도 추가 해 야 합 니 다.하지만 실제로 그 는 가장 좋 은 것 입 니 다.앞의 두 개 는 네트워크 환경 과 관계 가 있 기 때 문 입 니 다.Docker 미 러 를 설정 하 더 라 도 잘못 보고 할 수 있 습 니 다.한번 해 보 세 요.
    참고 자료:
    jib-maven-plugin
    https://github.com/GoogleContainerTools/jib/tree/master/jib-maven-plugin
    dockerfile-maven plugin
    https://github.com/spotify/dockerfile-maven
    본문 번역
    https://medium.com/swlh/build-a-docker-image-using-maven-and-spring-boot-58147045a400
    여기 서 SpringBoot 가 Docker 미 러 를 구축 하 는 세 가지 방식 에 관 한 글 을 소개 합 니 다.더 많은 SpringBoot 가 Docker 미 러 를 구축 하 는 내용 은 예전 의 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!

    좋은 웹페이지 즐겨찾기