存储是 Docker 中非常重要的部分,了解 Docker Storage drivers 中 image、layer 的概念和设计细节有利于更好的优化程序在 Docker 中的读写性能。本文记录了 Docker docs 中 About storage drivers 部分的内容。
Storage drivers versus Docker volumes
| Storage drivers(存储驱动) | Docker volumes(卷) | |
| 解释 | Docker 使用 Storage drivers 程序来存储镜像层,并将数据存储在容器的可写层中。 容器的可写层在容器被删除后不会持久化,适合存储运行时产生的临时数据。 | Volumes 是一个或多个容器中的一个特别指定的目录,它绕过联合文件系统。 Volumes 可以持久保存数据,独立于容器的生命周期。 因此,当删除容器时,Docker 不会自动删除 Volumes,它也不会“垃圾收集”不再被容器引用的 Volumes。 |
| 特点 | 依赖于容器存在 | 独立于容器的生命周期 |

本文介绍了 Docker 中的存储驱动,探讨了镜像和层的概念,以及容器和层的关系。Docker 使用存储驱动来管理可堆叠的只读镜像层和可写容器层,采用写时复制(CoW)策略,通过共享层来节省空间。多个容器可以共享底层镜像,各自拥有独立的可写层。理解这些原理有助于优化 Docker 中的读写性能。
&spm=1001.2101.3001.5002&articleId=124683229&d=1&t=3&u=6557db3138244a74acb089fc0ab1e488)
4196

被折叠的 条评论
为什么被折叠?



