上一篇文章我们说了如何用maven-docker-plugin来构建,但是官方推荐新项目使用dockerfile-maven-plugin,下面废话不多说了,直接上干货。dockerfile-maven插件的官方网址为:https://github.com/spotify/dockerfile-maven
项目结构如下:
注意:Dockerfile的文件是在项目的根目录下面,下面我们来看pom文件中需要配置的插件部分:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>dockerfile-maven-plugin</artifactId>
<version>1.4.10</version>
<executions>
<execution>
<id>default</id>
<goals>
<goal>build</goal>
<goal>push</goal>
</goals>
</execution>
</executions>
<configuration>
<repository>192.168.0.125:5000/${project.artifactId}</repository>
<tag>${project.version}</tag>
<buildArgs>
<!--提供参数向Dockerfile传递-->
<!-- <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>-->
<JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
</buildArgs>
</configuration>
</plugin>
Dockerfile 配置如下:
FROM openjdk:8u191-jre-alpine3.9
ENTRYPOINT ["/usr/bin/java", "-jar", "/app.jar"]
ARG JAR_FILE
ADD ${JAR_FILE} /app.jar
EXPOSE 8080
增加好以上2个配置后,就已经配置成功了,下面我们在命令行执行下试试看:
mvn dockerfile:build
可以看到已经可以正常运行了。dockerfile-maven插件常用的命令有:
mvn package
mvn dockerfile:build
mvn verify
mvn dockerfile:push
mvn deploy
有问题可以在评论区留言,技术问题可以私信我哦。