Docker 是否在每个容器上复制只读目录?

Does Docker replicate read only directories on each container?

比方说,我有一张 docker 图像,其中有一个非常大的只读目录。现在,如果我 运行 在同一节点上说 10 个容器,每个 docker 容器是否包含该只读目录的副本,或者它们是否会以某种方式在它们所在的节点上共享该目录 运行继续。

如果他们确实以某种方式共享只读目录,为了保存 space,我们是否必须将这样的目录明确设为只读,或者 docker 容器是否会使用某种复制-写入机制,如果您不修改目录的文件,docker 容器将共享它。

他们共享镜像中的底层目录。内核提供了写时复制功能。 Docker 文档中的 Storage overview 对此进行了更多解释,但除非您正在积极开发 Docker 本身,否则您不需要了解太多:如果您 docker run 来自同一镜像的多个容器然后它们共享基础 OS 和存储在镜像中的应用程序文件。