I have a Macbook and am developing a .Net application (it's not .net core and a transition to .net core is not in the near-term plans). I therefore run a Windows Pro environment via Parallels which I use to map my Macbook home ~
directory to the in-parallels Y:
drive. I store all my code on my Macbook which makes it easier to code for example via emacs.
PS Y:\foo> Get-PSDrive
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
...
Y 155.34 775.38 FileSystem \\Mac\Home
For a variety of reasons I am currently trying to dockerize my application in a way that I can develop directly against the docker container (ie I cannot ADD
code, I have to create a VOLUME
because I don't want to reboot the container every time I change a js file).
Frustratingly, I cannot seem to create a volume for my Y:
drive. I created a very simple application foo
where I'm trying to map foo/content
to the in-container /site
directory.
This works:
PS Y:\foo> docker run --name iis -p 8000:8000 -v c:/foo/content:c:/site iis-test
This fails:
PS Y:\foo> docker run --name iis -p 8000:8000 -v y:/foo/content:c:/site iis-test
C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: invalid bind mount spec "y:/foo/content:c:/site": invalid volume specification: 'y:/foo/content:c:/site': invalid mount config for type "bind": bind source path does not exist.
See 'C:\Program Files\Docker\Docker\Resources\bin\docker.exe run --help'.
Is this a limitation of Docker that I cannot use a mapped network drive? Is this a limitation of Docker for Windows Beta? Is there anything else that I can try?
From what I can find, it seems to be a limitation within "Windows and the base image" that MS is tracking internally and cannot be fixed by Docker for Windows.
More info here