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

使用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依赖


    io.fabric8
    docker-maven-plugin
    0.28.0

    

        unix:///var/run/docker.sock

        true
        
            
                
                ted005/for_docker
                
                   
                   
                   ${project.basedir}/src/main/docker/

                    
                    
                        artifact
                    
                    
                    
                    
                        latest
                    
                
            
        
    


执行maven命令并构建docker image

mvn clean package docker:build

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

构建docker

推送到docker hub上

  • 配置maven settings.xml文件:

    
      docker.io
      ted005
      XXXXXX
    

  • 执行命令
mvn clean package docker:build docker:push
  • 在docker hub可以看到刚刚推送成功的docker image


    docker hub

你可能感兴趣的:(docker入门—4. 使用fabric8构建并推送Docker)