在Docker中挂载本地文件夹会导致目录为空

时间:2019-03-08 22:17:01

标签: windows powershell docker windows-subsystem-for-linux docker-for-windows

首先,我的设置是

  • windows 10(1709 16299.967)
  • wsl(ubuntu 18.04)
  • 适用于Windows 2.0.0.2(30215)Engine 18.09.1的Docker

我正在尝试将本地开发文件夹作为卷挂载在Docker容器中,但是挂载的目录始终为空。 我已经通过docker for Windows设置对话框为c:/启用了共享驱动器设置。

我尝试通过WSL和powershell挂载本地目录,但在任何情况下都没有运气。我尝试过的命令是:

docker run -it -v /c/code/bitbucket/my-api:/var/my-api -w "/var/my-api" centos:7
docker run -it -v c:/code/bitbucket/my-api:/var/my-api -w "/var/my-api" centos:7
docker run -it -v c:\code\bitbucket\my-api:/var/my-api -w "/var/my-api" centos:7

在WSL和powershell中,但所有这些都导致/ var / my-api文件夹为空

如果我放置的文件夹不存在,则会出现以下错误:

➜  docker run -it -v /c/code/bitbucket/my-apizzz:/var/my-apizzz -w "/var/my-apizzz" centos:7
docker: Error response from daemon: Mount denied:
The source path "C:/code/bitbucket/my-apizzz"
doesn't exist and is not known to Docker.
See 'docker run --help'.

所以我认为我使用的语法正确,只是docker似乎无法访问文件共享

1 个答案:

答案 0 :(得分:1)

我以前见过这个问题。尝试在此处重置您的凭据:

enter image description here

然后测试:

docker run --rm -v c:/code/bitbucket/my-api:/data alpine ls /data