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

时间:2014-10-07 04:16:47

标签: git docker

如何安装docker容器图像以便我可以使用外部工具修改它们?

这意味着:从docker主机,安装映像而不在其上启动容器,作为普通文件系统。我不应该为此运行一个容器。

我想以这种方式直接更新图像,然后可能会发送docker commit之类的内容。使用lxc工具(例如在ubuntu中)非常简单,因为它可以直接在/var/lib/lxc/MYCONTAINER/rootfs中托管。

我知道解决方法,但是:

  • 我不认为使用Dockerfile上下文(和ADD)相当方便或不适应:我没有要发送的特定目录,而是使用组合工具来仅更改特定文件(例如,考虑rsync)。
  • 即使ADD包含某种仅适当地向图像添加新文件的算法,我仍然必须将所有文件作为 docker context 发送给build命令!
  • 我可以通过调用预先安装在图像中的工具来更新容器图像。但apt-get install git图像上的debian使图像的大小加倍。 git不会用于生产。使用后删除工具并不总是那么容易,除了感觉不对外。
  • 我可以使用-v docker build选项来安装一个充满工具的目录......及其依赖项。如果你需要的不仅仅是一个非常简单的bash脚本,那就太难了。

1 个答案:

答案 0 :(得分:1)

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