使用maven fabric8插件保存docker镜像

问题描述:

我想在我的pom.xml文件中包含一些位以保存构建好的docker镜像,这就是我在fabric8 docker mvn插件中放置的部分。使用maven fabric8插件保存docker镜像

<execution> 
         <id>save</id> 
         <phase>package</phase> 
         <goals> 
          <goal>build</goal> 
         </goals> 
        </execution> 

,我还包括该物业像所示fabric8 DOC

<properties> 
       <docker.save.alias>image</docker.save.alias> 
</properties> 

但是当我做MVN包我没有看到任何image.tar。还有可能在另一个档案中打包其他带有图像焦油的文件吗?

+0

什么tar文件,你期待?可以导入泊坞窗焦油图像或罐子+ Dockerfile的焦油可以在外部构建为image? –

+0

docker tar image,如果可能的话包含tar的tar以及proj的一些资源等。 – user2133558

其实你可以有两种与d-M-P expoerted焦油档案:

  • 使用docker:save导出多克尔图像本身。这是一个包含所有图像层的tar归档文件,其格式与您使用docker save获得的归档文件相同。您可以使用此档案与docker import再次导入此图像。

  • docker:source可用于保存发送到Docker守护程序以创建映像的Docker tar。此归档文件包含构建上下文(即ADDCOPY带有Dockerfile的所有文件)和Dockerfile本身。

这两个目标都可以绑定到执行阶段。 docker:save没有默认的执行阶段,但docker:source具有package作为其默认的阶段(并因此刚刚创建之前安装,如果约束。

因此,对于你的例子给docker:save目标结合到包装阶段,你需要配置阶段明确的save目标(这是在你的榜样缺失)

<execution> 
    <id>save</id> 
    <phase>package</phase> 
    <goals> 
    <goal>build</goal> 
    <goal>save</goal> 
    </goals> 
</execution>