더북(TheBook)

4.5.1 도커 이미지 만들기

라이선싱 서비스의 pom.xml 파일에 도커 메이븐 플러그인을 추가해서 도커 이미지를 빌드한다. 이 플러그인을 사용하면 메이븐 pom.xml 파일에서 도커 이미지와 컨테이너를 관리할 수 있다. 다음 코드는 pom.xml 파일에 추가해야 하는 부분을 보여 준다.

코드 4-2 dockerfile-maven-plugin을 pom.xml 파일에 추가하기

<build>
  <plugins>
    <plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>
    <!-- This plugin is used to create a docker image and 
        publish the image to docker hub -->
    <plugin>  
      <groupId>com.spotify</groupId>
      <artifactId>dockerfile-maven-plugin</artifactId>
      <version>1.4.13</version>
      <configuration>
        <repository>${docker.image.prefix}/${project.artifactId}</repository> 
        <tag>${project.version}</tag> 
        <buildArgs>
            <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>  
        </buildArgs>
      </configuration>
      <executions>
        <execution>
          <id>default</id>
          <phase>install</phase>
          <goals>
            <goal>build</goal>
            <goal>push</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

➊ 여기에서 Dockerfile 메이븐 플러그인을 시작한다.

➋ 리모트 저장소 이름을 설정한다. 플러그인에서 정의된 변수인 docker.image.prefix와 project.artifactId를 사용한다.

➌ 프로젝트 버전에 대한 저장소 태그를 설정한다.

➍ <buildArgs>를 사용하여 JAR 파일 위치를 설정한다. 이 값은 Dockerfile에서 사용된다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.