我将如何安装docker容器文件系统?

我将如何装载docker集装箱图像,以便我可以用外部工具修改它们?

这意味着:从docker主机,挂载图像,而不用启动一个容器,作为一个正常的文件系统。 我不应该为此运行一个容器。

我想直接更新图像,然后可能发送像docker commit这样的东西。 使用lxc工具(例如在ubuntu中),它非常容易,因为它可以直接在/var/lib/lxc/MYCONTAINER/rootfs

我知道解决方法,但是:

  • 我不觉得使用Dockerfile上下文(和ADD )是相当方便,也不适应:我没有一个特定的目录发送,而是将使用工具的组合来更改只有特定的文件(例如思考rsync ) 。
  • 即使ADD包含某种只将新文件添加到图像的algorithm,我仍然必须发送所有文件作为构build命令的docker上下文
  • 我可以通过调用预先安装在图像中的工具来更新容器图像。 但apt-get install gitdebian映像上apt-get install git会使图像的大小加倍。 而git将不会被用于生产。 使用后删除工具并不总是那么容易,除了感觉错误。
  • 我可以使用-v docker build的选项来挂载一个完整的工具目录和它们的依赖关系。 如果你需要的不仅仅是一个非常简单的bash脚本,这感觉很难。

在你的情况下,我会运行一个容器(我知道你是反对的),然后,例如,rsync文件到/ var / lib / docker / devicemapper / mnt / CONTAINERID / rootfs,然后是docker commit。