maven插件构建Docker镜像

读取Dockerfile进行构建

在项目的/src/main目录下创建docker目录

将Dockerfile文件添加进去

Dockerfile内容如下

FROM java:8

MAINTAINER dengyunshuo <dengyunshuo@163.com>

COPY *.jar /

ENTRYPOINT ["java","-jar", "/power-dubbo-provider-1.0-SNAPSHOT.jar"]


插件配置如下

<!-- docker的maven插件,官网:https://github.com/spotify/docker-maven-plugin -->

            <plugin>

                <groupId>com.spotify</groupId>

                <artifactId>docker-maven-plugin</artifactId>

                <version>0.4.12</version>

                <executions>

                    <execution>

                        <id>build-image</id>

                        <phase>package</phase>

                        <goals>

                            <goal>build</goal>

                        </goals>

                    </execution>

                </executions>

                <configuration>

                    <!-- 注意imageName一定要是符合正则[a-z0-9-_.]的,否则构建不会成功 -->

                    <!-- 详见:https://github.com/spotify/docker-maven-plugin    Invalid repository name ... only [a-z0-9-_.] are allowed-->

                    <imageName>${project.artifactId}:${project.version}</imageName>

                    <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>

                    <resources>

                        <resource>

                            <targetPath>/</targetPath>

                            <directory>${project.build.directory}</directory>

                            <include>${project.build.finalName}.jar</include>

                        </resource>

                    </resources>

                </configuration>

            </plugin>

------------------------------------------------------------------------------------------------------

插件配置

<plugin>

                <groupId>com.spotify</groupId>

                <artifactId>docker-maven-plugin</artifactId>

                <version>0.4.12</version>

                <executions>

                    <execution>

                        <id>build-image</id>

                        <phase>package</phase>

                        <goals>

                            <goal>build</goal>

                        </goals>

                    </execution>

                </executions>

                <configuration>

                    <!-- 注意imageName一定要是符合正则[a-z0-9-_.]的,否则构建不会成功 -->

                    <!-- 详见:https://github.com/spotify/docker-maven-plugin    Invalid repository name ... only [a-z0-9-_.] are allowed-->

                    <imageName>power-dubbo-provider</imageName>

                    <baseImage>java</baseImage>

                    <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>

                    <resources>

                        <resource>

                            <targetPath>/</targetPath>

                            <directory>${project.build.directory}</directory>

                            <include>${project.build.finalName}.jar</include>

                        </resource>

                    </resources>

                </configuration>

</plugin>

通过执行package打包既可