首页/云/Docker 容器速查/docker volume ls 列出卷
网络与存储52 条

docker volume ls 列出卷

列出所有卷及驱动:确认卷命名、排查遗留匿名卷、按名称或标签检索目标卷。

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

docker volume ls 是什么

volume ls 列出本机上的数据卷及其驱动,是巡检容器数据的起点。输出里既有你显式创建的具名卷,也有容器自动生成的匿名卷;两者混在一起,仅靠名字不容易分辨来源。配合过滤条件与格式化输出,可以快速定位遗忘的卷、统计占用,并把清理动作限定在确定范围内。

基本信息

语法docker volume ls [--filter 条件] [--format 模板] [-q]
常用过滤dangling=true 未被使用的卷、label=键=值、driver=local
格式字段Name、Driver、Scope、Label、Mountpoint(部分字段需在 inspect 中查看)
相关命令docker volume inspect 卷名、docker volume prune 清理未使用卷
区分方式具名卷由人命名;匿名卷是长串随机哈希
作用范围仅当前 Docker 守护进程管理的卷

典型使用场景

  • 巡检遗留卷:找出没有容器再使用的卷,评估是否清理
  • 按标签筛选:批量定位某个项目或环境的数据卷
  • 反查使用方:从卷名找到正在使用它的容器
  • 清理前确认范围:先用列命令核对,再执行删除
  • 迁移前盘点:确认需要一并带走的数据卷清单

列出与筛选

列出与筛选
# 基本列出
docker volume ls

# 只要名字,便于脚本处理
docker volume ls -q

# 只看未被任何容器使用的卷(dangling 卷)
docker volume ls --filter dangling=true

# 按标签筛选(配合编排文件里声明的 labels)
docker volume ls --filter label=env=prod --format 'table {{.Name}}\t{{.Driver}}'

# 反查某个卷的使用方:列出挂载了该卷的所有容器
docker ps -a --filter volume=myproj_dbdata

# 查看卷的宿主实际路径与创建时间
docker volume inspect myproj_dbdata

输出逐列读法

列/字段含义异常信号
DRIVER卷驱动,通常为 local出现非预期驱动说明环境有共享存储插件
VOLUME NAME卷名随机哈希多为匿名卷,来源难追溯
SCOPE作用范围local 表示仅本机可用
Mountpoint宿主上的实际目录(inspect 查看)路径异常说明卷被手工改动过
Labels附加标签缺失标签会让批量筛选失效
匿名卷由容器创建时自动生成,容器删除后通常残留,是磁盘被悄悄占满的常见原因;删除容器时加 -v 可一并删除其匿名卷。
清理卷属于破坏性操作:prune 会删除所有未被容器使用的卷,其中可能包含暂时停用的服务数据。执行前先用 -q 列出将被命中的卷并留备份。

易错点

  • 卷数量多时肉眼难以判断归属,应结合容器过滤与标签系统化巡检
  • 把 dangling 卷当成垃圾直接清理:它可能属于暂时停止的服务,先确认业务再删除
  • 依赖卷名判断来源不可靠:匿名卷是随机串,排查时要回到容器定义里找
  • 在没挂载卷的机器上操作数据,误以为数据丢失,实际是换了主机或数据目录

数据来源与参考

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