Docker Community Forums

Share and learn in the Docker community.

Unable to bind mount mount path to windows container


(Svaze) #1

OS: Windows 2016
Docker version
Client:
Version: 17.06.1-ee-2
API version: 1.30
Go version: go1.8.3
Git commit: 8e43158
Built: Wed Aug 23 21:16:53 2017
OS/Arch: windows/amd64

Server:
Version: 17.06.1-ee-2
API version: 1.30 (minimum version 1.24)
Go version: go1.8.3
Git commit: 8e43158
Built: Wed Aug 23 21:25:53 2017
OS/Arch: windows/amd64
Experimental: false


I’ve mounted a NTFS formatted volume on c:\mnt

mountvol output:

\?\Volume{f04e50c4-0000-0000-0000-100000000000}
*** NO MOUNT POINTS ***

\?\Volume{e922b53d-0000-0000-0000-010000000000}
C:\mnt\

\?\Volume{f04e50c4-0000-0000-0000-501f00000000}
C:\

When I try to bind mount this volume to a container, I get the following error

C:>docker run -it -v c:\mnt:c:\test microsoft/windowsservercore powershell
docker: Error response from daemon: invalid bind mount spec “c:\mnt\:c:\test”: invalid volume specification: ‘c:\mnt:c:\test’: invalid mount config for type “bind”: bind source path does not exist.
See ‘docker run --help’.

But If I create a volume inside c:\mnt, say “test1” ( Remember c:\mnt is a mounted folder) and then pass this path to the container, everything works fine

docker run -it -v c:\mnt\test1:c:\test microsoft/windowsservercore powershell

Is there any restriction on using reparse points in Docker for Windows?