全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📅 2026-05-21 6 分钟 ✍️ juanwangdev

存储驱动选择

Docker 存储驱动管理镜像层和容器文件系统,下面介绍常见驱动与选择。

常见存储驱动

overlay2(推荐)

Bash
# 查看当前驱动
docker info | grep "Storage Driver"

# 输出
Storage Driver: overlay2

特点:

  • Linux 内核 4.0+ 默认支持
  • 性能优秀,支持大多数现代 Linux 发行版
  • 内存和 CPU 开销低
  • 支持层共享,节省磁盘空间

aufs

Bash
# 仅 Debian/Ubuntu 支持
Storage Driver: aufs

特点:

  • 早期 Docker 默认驱动
  • 性能良好,但不在主线内核
  • 仅 Debian/Ubuntu 系列支持
  • 已逐步被 overlay2 替代

devicemapper

Bash
# CentOS/RHEL 旧版默认
Storage Driver: devicemapper

特点:

  • 适用于旧版内核
  • 性能较差,内存开销大
  • 已不推荐使用,应迁移到 overlay2

btrfs/zfs

Bash
# 适用于特殊文件系统
Storage Driver: btrfs
Storage Driver: zfs

特点:

  • 支持快照、压缩等高级特性
  • 需要对应文件系统支持
  • 适合高级用户和特殊需求

驱动对比

驱动内核要求性能推荐度适用系统
overlay24.0+✅ 推荐大多数 Linux
aufs任意⚠️ 旧Debian/Ubuntu
devicemapper任意❌ 不推荐CentOS/RHEL
btrfs3.0+⚠️ 特殊需要 btrfs
zfs任意⚠️ 特殊需要 zfs

切换驱动

Bash
# 停止 Docker
sudo systemctl stop docker

# 修改配置
# /etc/docker/daemon.json
{
  "storage-driver": "overlay2"
}

# 删除旧数据(警告:会丢失所有镜像和容器)
sudo rm -rf /var/lib/docker

# 启动 Docker
sudo systemctl start docker

切换存储驱动会删除所有现有镜像和容器,需谨慎操作。

查看驱动状态

Bash
# 查看驱动详情
docker info

# 输出
Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Using metacopy: false
  Native Overlay Diff: true

推荐配置

JSON
{
  "storage-driver": "overlay2",
  "storage-opts": [
    "overlay2.override_kernel_check=true"
  ]
}

内核 4.0+ 系统强烈推荐使用 overlay2。

要点总结

  • overlay2 是现代 Linux 的推荐驱动,性能优秀
  • aufs 仅 Debian/Ubuntu 支持,已逐步淘汰
  • devicemapper 性能差,不建议使用
  • 切换驱动会丢失所有镜像和容器,需备份
  • 使用 docker info 查看当前驱动状态

📝 发现内容有误?点击此处直接编辑

← 上一篇 Volume 驱动与备份
下一篇 → 数据迁移与克隆
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库