美文网首页Docker容器Docker入门系列
docker入门—4. 使用fabric8构建并推送Docker

docker入门—4. 使用fabric8构建并推送Docker

作者: ted005 | 来源:发表于2019-03-10 20:09 被阅读8次

使用fabric 8和maven结合,可以在使用maven构建应用时自动构建docker image。

示例源码,包含POM配置,Dockerfile

编写Dockerfile

借用之前的Dockerfile,不过ADD命令稍有不同,这里的路径是maven/for_docker-0.0.1-SNAPSHOT.jar,因为使用下面的assembly参数配置后,jar包会拷贝到docker build目录下。

#继承centos docker file
FROM centos

#安装JDK
RUN yum install -y java

#配置docker存储目录
VOLUME /tmp

#将maven目录的jar包拷贝到docker中,并命名为for_docker.jar
ADD maven/for_docker-0.0.1-SNAPSHOT.jar for_docker.jar

ENTRYPOINT ["java", "-jar", "/for_docker.jar"]

添加Fabric 8依赖

<plugin>
    <groupId>io.fabric8</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <version>0.28.0</version>

    <configuration>

        <dockerHost>unix:///var/run/docker.sock</dockerHost>

        <verbose>true</verbose>
        <images>
            <image>
                <!--如果要推送到docker hub,这里需要使用 用户名 -->
                <name>ted005/for_docker</name>
                <build>
                   
                   <!--Dockerfile所在目录-->
                   <dockerFileDir>${project.basedir}/src/main/docker/</dockerFileDir>

                    <!--将jar包拷贝到docker build目录中-->
                    <assembly>
                        <descriptorRef>artifact</descriptorRef>
                    </assembly>
                    
                    <!--latest标签-->
                    <tags>
                        <tag>latest</tag>
                    </tags>
                </build>
            </image>
        </images>
    </configuration>

</plugin>

执行maven命令并构建docker image

mvn clean package docker:build

构建后的工程目录如下:可以看到Dockerfilemaven目录平级

构建docker

推送到docker hub上

  • 配置maven settings.xml文件:
<servers>
    <server>
      <id>docker.io</id>
      <username>ted005</username>
      <password>XXXXXX</password>
    </server>
</servers>
  • 执行命令
mvn clean package docker:build docker:push
  • 在docker hub可以看到刚刚推送成功的docker image


    docker hub

相关文章

网友评论

    本文标题:docker入门—4. 使用fabric8构建并推送Docker

    本文链接:https://www.haomeiwen.com/subject/gfpppqtx.html