如何安装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脚本,那就太难了。答案 0 :(得分:1)
在你的情况下,我会运行一个容器(我知道你反对这个)然后,例如rsync文件到/ var / lib / docker / devicemapper / mnt / CONTAINERID / rootfs,然后是docker commit。