使用dockerfile-maven-plugin插件

pom.xml添加docker插件

<plugin>
    <groupId>com.spotify</groupId>
    <artifactId>dockerfile-maven-plugin</artifactId>
    <version>1.4.13</version>
    <executions>
        <execution>
            <id>default</id>
            <goals>
                <goal>build</goal>
                <goal>push</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <repository>core</repository>
        <tag>${project.version}</tag>
        <buildArgs>
            <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
        </buildArgs>
    </configuration>
</plugin>

创建Dockerfile文件(pom.xml同级)

# 基础镜像使用java
FROM openjdk:11-oracle
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp 
ARG JAR_FILE
# 将jar包添加到容器中并更名为app.jar
ADD target/${JAR_FILE} /home/app.jar 
# 运行jar包
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/home/app.jar"]

项目中执行命令发布

docker run -d --name bts-core -p 8070:8070 -v /etc/localtime:/etc/localtime -v /docker-log:/logs imageName:tag