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

有問題可以在評論區留言,技術問題可以私信我哦。 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章