为什么Docker需要联合文件系统

为什么Docker需要联合文件系统,docker,filesystems,containers,Docker,Filesystems,Containers,Docker使用Union文件系统(如AUFS)创建容器的具体操作是什么?如果Docker不得不使用常规文件系统而不是联合文件系统,那么缺点是什么 我在寻找具体的技术细节/内部信息,而不是高层次的答案。它用于: 避免在每次将图像作为新容器运行时复制完整的文件集 将对容器文件系统的更改隔离在其自己的层中,允许从已知内容重新启动同一容器(因为在移除容器时,具有更改的层将被解除) 即: 为其他文件系统实现一个。它允许透明地覆盖单独文件系统(称为分支)的文件和目录,形成一个统一的文件系统。 在合并的

Docker使用Union文件系统(如AUFS)创建容器的具体操作是什么?如果Docker不得不使用常规文件系统而不是联合文件系统,那么缺点是什么

我在寻找具体的技术细节/内部信息,而不是高层次的答案。

它用于:

  • 避免在每次将图像作为新容器运行时复制完整的文件集
  • 将对容器文件系统的更改隔离在其自己的层中,允许从已知内容重新启动同一容器(因为在移除容器时,具有更改的层将被解除)
即:

为其他文件系统实现一个。它允许透明地覆盖单独文件系统(称为分支)的文件和目录,形成一个统一的文件系统。
在合并的分支中具有相同路径的目录的内容将一起显示在新的虚拟文件系统中的单个合并目录中

这允许文件系统显示为可写,但实际上不允许写操作更改文件系统,也称为

如果您没有UnionFS,一个200MB的映像在5个容器中运行5次意味着1GB的磁盘空间

有关详细信息,请参阅“”。
有关更多技术详细信息,请参阅:

  • “”
  • ”“是的

另外,对于那些在后端SAN存储设备上托管docker映像的人来说,海量缓存命中一定是存储管理员的梦想。这不是在讨论像aufs这样的unionfs的工作吗?