meD*_*Dev 3 docker docker-volume docker-container docker-desktop
在互联网和 Stackoverflow 上搜索了此内容但没有成功
在 Windows 10 上使用 Docker for Desktop 版本 4.12.0,并以 WSL2 作为后端。
在 Windows 命令提示符窗口中,以下内容有效并列出 c:/data 中的文件
docker run --rm -v c:/data:/target alpine ls /target
Run Code Online (Sandbox Code Playgroud)
但以下都不起作用。/target 目录始终为空!
docker run --rm -v d:/data:/target alpine ls /target
docker run --rm -v "d:/data:/target" alpine ls /target
docker run --rm -v "d:/data":/target alpine ls /target
docker run --rm -v /mnt/d/data:/target alpine ls /target
docker run --rm -v /run/desktop/host/d/data:/target alpine ls /target
docker run --rm -v "/run/desktop/host/d/data:/target" alpine ls /target
Run Code Online (Sandbox Code Playgroud)
但是,在 WSL 2 终端窗口中,以下命令可以工作并列出 /target 目录下的文件!
docker run --rm -v /mnt/d/data:/target alpine ls /target
Run Code Online (Sandbox Code Playgroud)
但我想使用适用于 Windows 的 Docker Desktop 并使用 Windows 命令提示符。最终,我想在 docker-compose.yml 中安装卷。
根据过去 StackOverflow 的答案,上述一些命令似乎适用于不同的人。不知道是否是因为 Docker for Desktop 版本不同,或者不清楚他们是否在 WSL2 终端窗口或 Windows 命令提示符窗口中进行尝试。
“我们支持映射整个第二个驱动器号,但目前不支持映射其中的一部分。 ”
您必须安装完整的 d 驱动器,如下所示d:
其他选项(例如根 ( d:\) 或路径 ( d:\somefolder))不适用于第二个驱动器。
就您而言,这意味着执行以下操作:
docker run -it -v d: alpine ls /d/data
Run Code Online (Sandbox Code Playgroud)
如果这会在容器内创建一个空的 d 文件夹,则意味着您遇到了驱动器内的权限问题。
请注意,即使问题评论来自 2016 年,似乎限制仍然存在......
| 归档时间: |
|
| 查看次数: |
2292 次 |
| 最近记录: |