1. 程式人生 > >普通maven專案整合docker打映象

普通maven專案整合docker打映象

本人在開發一個新專案是用maven構建的,在本地開發完成後,要用docker打成映象部署到容器

一下是簡單的步驟,作為記錄:

1:引入外掛:見程式碼

            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>0.4.13</version>
                <executions>
                    <execution>
                        <id>build-image</id>
                        <phase>package</phase>
                        <goals>
                            <goal>build</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <imageName>${docker.hub.domain}/${docker.image.prefix}/${project.artifactId}:${docker.image.tag}</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>
                    <serverId>docker-hub-registry</serverId>
                </configuration>
            </plugin>

在上述程式碼中,指定了docker-file的位置    maven package命令就有了打映象到本地的功能了

2.新增docker-file:

FROM hub.xxx.com/xuexi/java8:0010
VOLUME /tmp
ADD cms-0.0.1.jar app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
EXPOSE 8086

以上檔案中是docker需要執行的命令

3.執行docker

docker login 到對應的映象庫   到專案目錄下執行 mvn clean package -DpushImage 命令即可生成映象並push到遠端映象庫