12

Как смонтировать том с хоста Windows на гостевую систему Windows?

Я на Windows Server 2016 TP4 с помощью Docker.

Следуя документации на https://docs.docker.com/engine/userguide/containers/dockervolumes/

Если вы используете Docker Machine на Mac или Windows, ваш демон Docker имеет только ограниченный доступ к вашей файловой системе OS X или Windows. Docker Machine пытается автоматически предоставить общий доступ к вашему каталогу /Users (OS X) или C:\Users (Windows). Таким образом, вы можете монтировать файлы или каталоги в OS X, используя.

В Windows смонтируйте каталоги, используя:

Окно запуска -v /c /Users /[путь]:/[путь контейнера] ...`

Я старался:

docker run --name iisdemo2 -it -p 80:80 -v /c/Users/mlin/meinedaten:/meinedaten iis cmd

что дает мне ошибку:

docker : docker: Error response from daemon: Invalid bind mount spec "/c/Users/mlin/meinedaten:/meinedaten": volumeinvalid: Invalid volume specification: 
'/c/Users/mlin/meinedaten:/meinedaten'.

Я также попробовал:

docker run --name iisdemo2 -it -p 80:80 -v /c/Users/mlin/meinedaten:/c/meinedaten iis cmd

Обратите внимание, что путь C:\meinedaten в гостевом / контейнере уже существует, что требуется согласно документации докера.

Команда выглядит правильно для меня в соответствии с документацией.

(Монтирование томов с хоста Mac OS X в док-контейнер Ubuntu работает нормально, у меня просто проблемы с Windows.)

Обновить

Я также попытался использовать Windows Containers изначально (через Powershell), не используя Docker. Я следую документации по https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/manage_powershell#create-a-shared-folder.

Add-ContainerSharedFolder -ContainerName mysql2 -SourcePath C:\Users\mlin\meinedaten -DestinationPath C:\meinedaten

Но у меня тоже есть проблемы.

В конце концов связанные темы:

2 ответа2

13

В Windows пути должны быть указаны с использованием семантики в стиле Windows. Вы не должны использовать ведущую косую черту перед дорожкой.

docker run -v c:\Users\[path]:c:\[containerPath]
4

Windows 10 Anniversary Update и Windows Server 2016 RTM.

Добавить том:

docker run -d -v my-named-volume:C:\MyNamedVolume testimage:latest

Смонтируйте каталог хоста:

docker run -d -v C:\Temp\123:C:\My\Shared\Dir testimage:latest

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .