gpt4 book ai didi

git - 我将如何挂载 docker 容器文件系统?

转载 作者:太空狗 更新时间:2023-10-29 14:19:04 25 4
gpt4 key购买 nike

我该如何挂载 docker 容器镜像,以便我可以使用外部工具修改它们?

这意味着:从 docker 主机,挂载镜像而不在其上启动容器,作为一个普通的文件系统。我不需要为此运行容器。

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

我知道解决方法,但是:

  • 我不觉得使用 Dockerfile 上下文(和 ADD)很方便也不适合:我没有要发送的特定目录,但宁愿使用工具组合仅更改特定文件(例如考虑 rsync)。
  • 即使 ADD 包含某种只适本地向图像添加新文件的算法,我仍然必须将所有文件作为构建命令的 docker 上下文 发送! .
  • 我可以通过调用镜像中预装的工具来更新容器镜像。但是 apt-get install gitdebian 镜像上会使镜像的大小加倍。并且 git 不会用于生产。使用后移除工具并不总是那么容易,而且感觉不对。
  • 我可以使用 -v docker build 的选项来挂载一个充满工具……及其依赖项的目录。如果您需要的不仅仅是一个非常简单的 bash 脚本,这感觉很难。

最佳答案

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

关于git - 我将如何挂载 docker 容器文件系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26228458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com