首页/云/Docker 容器速查/docker volume create 创建数据卷
网络与存储52 条

docker volume create 创建数据卷

创建由 Docker 管理的命名卷:卷数据落在宿主机 Docker 数据目录下,由守护进程维护,适合数据库、上传目录等持久化场景。

Docker 容器速查云更新于 2026-10-13

创建数据卷是什么

创建一个由引擎管理的命名卷,用来存放需要跨容器生命周期保留的数据。卷的落盘位置在引擎的数据根目录下,路径由引擎维护,使用者按名字引用。数据库目录、上传目录、需要归档的数据都属于典型场景。

基本信息

语法docker volume create [选项] 名称
默认驱动本地驱动,数据落在本机数据根目录下
常用选项驱动选择、标签标注、驱动专用参数
命名规则同名卷不能重复创建,名称即引用标识
查看位置用查看命令可看到卷在宿主上的实际挂载点

典型使用场景

  • 数据库持久化:把数据目录挂到命名卷,容器重建数据仍在
  • 上传目录保留:用户上传的文件放卷里,便于备份与迁移
  • 多容器共享数据:多个容器挂载同一卷,实现文件级共享
  • 归档与迁移:按需把卷内容导出到备份存储
  • 环境隔离:测试与生产使用不同卷,避免数据混淆

常用示例

常用示例
docker volume create pgdata                            # 创建命名卷
docker volume create --label env=prod --label app=web appdata   # 带标签便于筛选
docker volume ls                                       # 列出本地卷
docker volume inspect pgdata                           # 查看实际挂载点
docker run -d -v pgdata:/var/lib/postgresql/data --name db postgres:16-alpine  # 挂载使用

卷与宿主目录的选择

对比项命名卷宿主目录绑定
位置引擎数据根目录下,由引擎管理任意宿主路径,由使用者维护
可移植性随编排迁移更方便依赖宿主目录结构
备份方式通过卷导出或在容器内归档直接复制宿主目录
权限管理由容器内进程创建,属主可预期需自行维护属主与权限
典型场景有状态服务的数据目录配置、源码、静态资源

使用卷的注意点

  • 空卷挂到非空目录时,容器内原内容会被复制到卷里,行为容易误判
  • 卷名不存在时挂载会自动创建,显式创建便于统一命名与打标签
  • 卷没有挂载到任何容器时不会自动清理,需要单独按名删除
  • 卷的数据不会随镜像或容器打包带走,迁移时要单独处理
  • 删除卷不可恢复,操作前确认备份或业务已下线
卷的位置由引擎维护,不要当成普通宿主目录去手工编辑。需要人工改文件时,用临时容器挂载卷或通过宿主上的实际挂载点操作,并注意权限。
删除卷会连同业务数据一起消失,且无法恢复。生产环境把卷的删除权限与普通运维操作分开,并保留备份。

易错点

  • 把卷当成宿主目录去编辑,路径完全对不上,误以为数据丢失
  • 删除容器时加了清理匿名卷的选项,误删了数据目录
  • 卷长期增长没有监控,写满后业务与容器一起异常
  • 迁移环境时只搬了容器与镜像,忘了卷里的数据,上线后发现数据是空的

数据来源与参考

  • Docker 官方 CLI 参考:docker volume create(docs.docker.com)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌