Docker Desktop 怎么查看容器数据卷里的文件
来源:17golang原创
时间:2026-09-06 11:13:13 464浏览 收藏
想在 Docker Desktop 里查看容器数据卷的文件,入口不是容器的日志页,而是左侧的 Volumes。在卷列表里用 Search 找到目标卷,点击进入详情后打开 Stored data,就能浏览文件夹、文件名和大小;需要把文件带到宿主机时,对目标项右键选择 Save as...。先确认它确实是 Docker volume,再进行下面的操作。
Volumes视图适合查看 Docker 管理的 named volume,不适合直接寻找宿主机目录 bind mount。- 卷详情里的
Container in-use用来核对容器名和容器内 target 路径,Stored data用来浏览实际内容。 - 查看、保存和删除是不同动作;删除文件或清空卷前,先确认备份和正在使用它的容器。
一、先确认要找的是 volume
容器里的路径不等于 volume 名称。例如容器内的 /var/lib/app/data 只是挂载目标,真正要在 Docker Desktop 列表中搜索的可能是 project-data。如果应用使用的是宿主机目录 bind mount,文件实际位于宿主机路径,应从宿主机文件管理器或项目目录查找,不会按 named volume 的方式出现在这里。
| 存储类型 | 定位线索 | 查看入口 |
|---|---|---|
| volume | 有独立卷名,由 Docker 管理 | Docker Desktop → Volumes |
| bind mount | 配置里直接出现宿主机目录 | 宿主机目录或项目文件夹 |
| 容器可写层 | 没有独立持久化卷 | 不要把它当成 volume 查找 |
拿不准时,可以先在命令行查看容器挂载信息。下面的命令只读取配置,不会修改容器或卷:
docker inspect web-service --format '{{json .Mounts}}'
# 关注 Type、Name 和 Destination,确认卷名与容器内挂载路径
二、在 Volumes 视图定位目标卷
打开 Docker Desktop,点击左侧导航的 Volumes。在页面上方 Search 输入卷名,例如 project-data;如果列表较长,再使用搜索框右侧的状态筛选,选择 In use 查看当前被容器使用的卷。列表通常还会显示名称、状态、创建时间和大小。

看到目标名称后不要直接点删除图标。先确认名称、使用状态和大小都符合预期,再单击这一行进入详情。若搜索不到,常见原因是卷名记错、当前 Docker Desktop 连接的环境不同,或者应用使用的是 bind mount。
三、在 Stored data 中浏览并保存文件
进入卷详情后,先看 Container in-use。这里会列出使用该卷的容器、镜像、端口和 target;target 是容器内访问这批文件的路径。确认它和应用配置一致,再切换到 Stored data,按文件夹层级展开内容,文件大小也会显示在列表中。

保存文件时,在 Stored data 中找到目标项并右键,选择 Save as...,然后指定宿主机保存位置。保存完成后,以宿主机副本的文件名和大小做一次人工核对。这个动作是复制数据,不会自动修改容器正在使用的原文件。
四、查看结果后再决定是否操作数据
如果只是排查配置,建议先保存副本再编辑;如果是数据库、上传目录或缓存目录,更不要把“能看到文件”理解成“可以安全删除”。Docker 文档说明,删除卷会删除卷及其数据;正在被容器使用的卷通常不能直接删除。需要清理时,先确认容器依赖、备份和回滚方式。
想从命令行补充确认卷的管理信息,可以使用:
docker volume inspect project-data --format '{{.Name}} {{.Mountpoint}}'
# 只输出卷名和 Docker 管理的挂载点,避免手动进入内部目录修改文件
在 Docker Desktop 中实际浏览和保存文件,优先使用 Stored data;Mountpoint 只适合确认卷对象信息,不是跨平台直接编辑卷内容的推荐入口。
相关问题
为什么在 Volumes 里找不到容器里的文件?
先确认容器是否使用了 Type=volume 的挂载。如果是 bind mount,应去宿主机目录找;如果没有挂载,文件可能只在容器可写层中,不能按独立 volume 浏览。
Stored data 里能直接删除文件吗?
界面支持右键删除,但应先确认文件不是数据库、运行配置或仍被服务打开的数据。删除卷和删除卷内单个文件不是同一动作,生产数据建议先保存副本。
Container in-use 显示的 target 有什么用?
它表示容器内访问这批卷文件的路径,例如 /var/lib/app/data。排查“应用说文件不存在”时,要把这个路径和应用配置中的目录逐字对照。
-
422 收藏
-
文章 · 软件教程 | 1个月前 | 容器 · 日志 · docker · 端口 · Docker Desktop · 故障排查 端口映射 容器日志 Docker Desktop Containers113 收藏
-
文章 · 软件教程 | 2星期前 | docker · 端口映射 · 软件教程 · Docker Desktop · 容器网络 · 端口冲突 端口映射 localhost Docker Desktop 容器端口 Ports220 收藏
-
212 收藏
-
142 收藏
-
238 收藏
-
229 收藏
-
106 收藏
-
197 收藏
-
390 收藏
-
201 收藏
-
115 收藏
-
498 收藏
-
281 收藏
-
493 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习