首页/ 学科题库/ docker/ 存储驱动选择
docker 实战教程

存储驱动选择

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 查看当前驱动状态
想在手机上练这篇的配套题目?
使用微信 卷王开发者小程序/App,首页顶部扫一扫识别下方二维码,即可解锁本讲对应真题与错题本。
了解产品 App
← 上一篇 Tmpfs 临时存储 下一篇 → 数据迁移与克隆