SpringBoot使用Dockerfile-maven-plugin构建docker镜像并且发布到私有仓库

上一篇文章我们说了如何用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

有问题可以在评论区留言,技术问题可以私信我哦。 

发布了106 篇原创文章 · 获赞 101 · 访问量 56万+

猜你喜欢

转载自blog.csdn.net/qq_24434671/article/details/103593489