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에서 사용된다.