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

命名数据卷管理

数据卷(Volume)是 Docker 持久化数据的主要方式,下面介绍命名卷的管理。

创建数据卷

Bash
# 创建命名卷
docker volume create my-data

# 查看卷列表
docker volume ls

# 输出示例
DRIVER    VOLUME NAME
local     my-data
local     nginx-config

# 查看卷详情
docker volume inspect my-data

# 输出
[
    {
        "CreatedAt": "2024-01-01T10:00:00Z",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/my-data/_data",
        "Name": "my-data",
        "Options": {},
        "Scope": "local"
    }
]

使用数据卷

Bash
# 挂载卷到容器
docker run -d -v my-data:/app/data --name my-app nginx

# 挂载多个卷
docker run -d -v my-data:/app/data -v my-config:/app/config nginx

# 只读模式
docker run -d -v my-data:/app/data:ro nginx

数据卷特点

  • 数据卷独立于容器生命周期,删除容器不影响卷数据
  • 多个容器可共享同一数据卷
  • 数据存储在宿主机的 Docker 管理目录(/var/lib/docker/volumes/
  • 支持备份、迁移、快照操作

管理数据卷

Bash
# 查看卷详情
docker volume inspect my-data

# 删除单个卷
docker volume rm my-data

# 删除未使用的卷
docker volume prune

# 确认提示
WARNING! This will remove all local volumes not used by at least one container.
Are you sure you want to continue? [y/N] y

删除容器时如果使用 -v 参数会同时删除关联的匿名卷,命名卷不受影响。

数据卷驱动

默认使用 local 驱动,也支持其他驱动:

Bash
# 使用 local 驱动创建
docker volume create --driver local my-data

# 指定驱动选项
docker volume create \
  --driver local \
  --opt type=tmpfs \
  --opt device=tmpfs \
  --opt o=size=100m \
  tmpfs-volume

要点总结

  • docker volume create 创建命名卷,docker volume ls 查看列表
  • -v 卷名:容器路径 挂载卷到容器,支持 :ro 只读模式
  • 数据卷独立于容器生命周期,删除容器不影响卷数据
  • docker volume prune 清理未使用卷,释放磁盘空间
  • 命名卷比匿名卷更易于管理和识别

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

← 上一篇 只读挂载与权限
下一篇 → 端口映射配置
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

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

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