Docker挂载无路径裸文件夹名时的主机存储位置查询
核心结论
你示例中docker run --volume my_folder:/mnt/mqm my-image-name里的my_folder不是绑定挂载的本地目录,而是Docker自动创建的「命名卷(named volume)」,和带相对/绝对路径的绑定挂载逻辑完全不同。
Windows 10 系统下的存储位置
根据你使用的Docker Desktop后端不同,路径分为两类:
- WSL2后端(当前Docker Desktop默认配置):命名卷存储在Docker专属的WSL虚拟机内,你可以直接在Windows文件管理器地址栏输入
\\wsl$\docker-desktop-data\data\docker\volumes\my_folder\_data访问对应内容。 - Hyper-V后端(旧版Docker Desktop默认):命名卷存储在系统公共目录,路径为
C:\ProgramData\Docker\volumes\my_folder\_data,注意ProgramData默认是隐藏目录,需要开启隐藏项目可见才能直接浏览。
全系统通用说明
- Linux原生Docker:所有命名卷统一存储在
/var/lib/docker/volumes/[卷名]/_data路径下,需要root权限访问。 - MacOS Docker Desktop:命名卷存储在Docker运行的Linux虚拟机内部,路径同样为
/var/lib/docker/volumes/my_folder/_data,你可以通过Docker Desktop UI的「Volumes」板块直接浏览内容,也可以通过临时挂载宿主机目录的容器访问内部文件。
补充区分规则
你可以执行 docker volume ls 命令,就能看到my_folder出现在Docker托管的卷列表里,而带路径的绑定挂载不会出现在该列表中。如果你的需求是挂载当前工作目录下的my_folder文件夹,必须显式加上路径前缀,写成docker run --volume ./my_folder:/mnt/mqm my-image-name,否则Docker会默认识别为命名卷处理。
内容的提问来源于stack exchange,提问作者diziaq
相关产品推荐
相关产品推荐

