Windows 7安装Docker Toolbox后执行docker build遇权限拒绝错误求助
解决Windows 7上Docker Toolbox构建时的权限/路径错误
我之前在Windows 7上用Docker Toolbox的时候也碰到过一模一样的问题!这个错误核心是Docker没办法正确处理带空格的Windows路径,加上默认用户目录(比如My Documents)的权限限制,导致无法读取上下文路径。给你几个靠谱的解决办法:
办法一:将项目移到无空格的路径下
Windows路径里的空格(像C:\Users\fred.blogs\My Documents)会让Docker Toolbox依赖的VirtualBox虚拟机解析路径出问题。你可以:
- 新建一个无空格的目录,比如
C:\docker-projects\phpinfo - 把你的Dockerfile移动到这个目录里
- 打开Docker Quickstart Terminal,切换到这个目录(注意要转换成Linux风格路径):
cd /c/docker-projects/phpinfo - 再次运行构建命令:
docker build -t phpinfo .
办法二:调整VirtualBox共享目录权限
Docker Toolbox是通过VirtualBox共享Windows目录给虚拟机的,权限不足也会导致这个问题:
- 打开VirtualBox,找到Docker默认创建的虚拟机(通常名为
default) - 右键点击虚拟机,选择「设置」→「共享文件夹」
- 找到对应你的用户目录的共享项(比如
/c/Users/fred.blogs),点击「编辑」 - 勾选「自动挂载」和「固定分配」,并将权限设置为「读写」
- 在Docker Quickstart Terminal里重启虚拟机:
docker-machine restart default - 重启后再尝试构建命令
办法三:转义空格的绝对路径(应急用)
如果暂时不想移动文件,可以尝试用转义空格的绝对路径指定上下文,但这个办法有时候仍会有权限问题,优先推荐前两个:
docker build -t phpinfo /c/Users/fred.blogs/My\ Documents/
另外别忘了确认你的Dockerfile确实没有后缀名——在Windows里打开「文件夹选项」→「查看」,取消勾选「隐藏已知文件类型的扩展名」,确保文件是纯Dockerfile而不是Dockerfile.txt之类的。
内容的提问来源于stack exchange,提问作者Mick
相关产品推荐
相关产品推荐

