Windows下用Python创建带挂载的Docker容器报错求助
解决Windows下Python Docker SDK挂载本地路径报错问题
问题根源
Windows环境中,Docker对本地磁盘路径的识别规则和Linux不同,不管是WSL2还是Hyper-V后端,都需要对应格式的路径才能完成正确挂载。
针对性解决方案
场景1:Docker Desktop 使用 WSL2 后端
WSL2会将Windows磁盘挂载到/run/desktop/mnt/host/目录下,直接替换为该路径格式即可:
repository = "/run/desktop/mnt/host/d/Test" client = docker.from_env() container = client.containers.run( image=docker_image, detach=True, volumes={repository: {'bind': '/repository', 'mode': 'rw'}} )
场景2:Docker Desktop 使用 Hyper-V 后端
改用双斜杠开头的路径格式:
repository = "//d/Test" client = docker.from_env() container = client.containers.run( image=docker_image, detach=True, volumes={repository: {'bind': '/repository', 'mode': 'rw'}} )
额外必查项
- 打开Docker Desktop设置,进入
Resources > File Sharing,确认D盘已被勾选,保存后重启Docker - 先用命令行测试挂载是否可行:
docker run -v d:/Test:/repository:rw <你的镜像名>,如果命令行也报错,优先排查Docker的文件共享配置 - 确保路径中无空格或特殊字符,若存在需在Python中正确转义(比如
"d:/My Test"或"//d/My Test")
内容的提问来源于stack exchange,提问作者Lvkas_
相关产品推荐
相关产品推荐

