2019-11-05 23:35:43 +08:00
# 联 合 文 件 系 统
2017-11-26 10:06:57 +08:00
2019-01-06 10:15:13 +08:00
联 合 文 件 系 统 ( [ UnionFS ] ( https : //en.wikipedia.org/wiki/UnionFS))是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem)。
2014-09-18 10:45:17 +08:00
2014-12-21 19:24:20 +08:00
联 合 文 件 系 统 是 Docker 镜 像 的 基 础 。 镜 像 可 以 通 过 分 层 来 进 行 继 承 , 基 于 基 础 镜 像 ( 没 有 父 镜 像 ) , 可 以 制 作 各 种 具 体 的 应 用 镜 像 。
2014-09-18 10:45:17 +08:00
2014-10-14 13:25:01 +08:00
另 外 , 不 同 Docker 容 器 就 可 以 共 享 一 些 基 础 的 文 件 系 统 层 , 同 时 再 加 上 自 己 独 有 的 改 动 层 , 大 大 提 高 了 存 储 的 效 率 。
2014-10-10 09:37:15 +08:00
2019-11-26 18:56:12 +08:00
Docker 中 使 用 的 AUFS ( Advanced Multi - Layered Unification Filesystem ) 就 是 一 种 联 合 文 件 系 统 。 ` AUFS ` 支 持 为 每 一 个 成 员 目 录 ( 类 似 Git 的 分 支 ) 设 定 只 读 ( readonly ) 、 读 写 ( readwrite ) 和 写 出 ( whiteout - able ) 权 限 , 同 时 ` AUFS ` 里 有 一 个 类 似 分 层 的 概 念 , 对 只 读 权 限 的 分 支 可 以 逻 辑 上 进 行 增 量 地 修 改 ( 不 影 响 只 读 部 分 的 ) 。
2014-09-18 10:45:17 +08:00
2017-11-26 10:06:57 +08:00
Docker 目 前 支 持 的 联 合 文 件 系 统 包 括 ` OverlayFS ` , ` AUFS ` , ` Btrfs ` , ` VFS ` , ` ZFS ` 和 ` Device Mapper ` 。
2017-11-26 10:38:07 +08:00
各 Linux 发 行 版 Docker 推 荐 使 用 的 存 储 驱 动 如 下 表 。
| Linux 发 行 版 | Docker 推 荐 使 用 的 存 储 驱 动 |
| : -- | : -- |
2020-10-12 18:54:47 +08:00
| Docker on Ubuntu | ` overlay2 ` ( 16.04 + ) |
| Docker on Debian | ` overlay2 ` ( Debian Stretch ) , ` aufs ` , ` devicemapper ` |
| Docker on CentOS | ` overlay2 ` |
| Docker on Fedora | ` overlay2 ` |
2017-11-26 10:38:07 +08:00
2019-11-15 11:01:25 +08:00
在 可 能 的 情 况 下 , [ 推 荐 ] ( https : //docs.docker.com/storage/storagedriver/select-storage-driver/) 使用 `overlay2` 存储驱动,`overlay2` 是目前 Docker 默认的存储驱动,以前则是 `aufs`。你可以通过配置来使用以上提到的其他类型的存储驱动。