Comment monter un volume de Windows Host sur un système invité Windows?
Je suis sur Windows Server 2016 TP4 avec Docker.
Suite à la documentation sur https://docs.docker.com/engine/userguide/containers/dockervolumes/
Si vous utilisez Docker Machine sur Mac ou Windows, votre démon Docker n'a qu'un accès limité à votre système de fichiers OS X ou Windows. Docker Machine essaie de partager automatiquement votre répertoire/Users (OS X) ou C:\Users (Windows). Donc, vous pouvez monter des fichiers ou des répertoires sur OS X en utilisant.
Sous Windows, montez les répertoires à l'aide de:
docker run -v/c/Utilisateurs/[chemin]:/[chemin du conteneur] ... `
J'ai essayé:
docker run --name iisdemo2 -it -p 80:80 -v /c/Users/mlin/meinedaten:/meinedaten iis cmd
ce qui me donne une erreur:
docker : docker: Error response from daemon: Invalid bind mount spec "/c/Users/mlin/meinedaten:/meinedaten": volumeinvalid: Invalid volume specification:
'/c/Users/mlin/meinedaten:/meinedaten'.
J'ai aussi essayé:
docker run --name iisdemo2 -it -p 80:80 -v /c/Users/mlin/meinedaten:/c/meinedaten iis cmd
Notez que le chemin C:\meinedaten sur l'invité/le conteneur existe déjà, ce qui est requis selon la documentation de docker.
La commande me semble correcte selon la documentation.
(Le montage de volumes de l'hôte Mac OS X au conteneur de menu fixe Ubuntu fonctionne correctement, je ne fais que rencontrer des problèmes avec Windows.)
Mise à jour
J'ai également juste essayé d'utiliser les conteneurs Windows de manière native (via Powershell), sans utiliser Docker. Je suis la documentation sur 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
Mais je vais avoir des problèmes là aussi.
Sujets éventuellement liés:
Sous Windows, les chemins doivent être spécifiés à l'aide d'une sémantique de style Windows. Vous ne devez pas utiliser de barre oblique devant le chemin.
docker run -v c:\Users\[path]:c:\[containerPath]
Mise à jour anniversaire Windows 10 et Windows Server 2016 RTM.
Ajouter un volume:
docker run -d -v my-named-volume:C:\MyNamedVolume testimage:latest
Monter un répertoire d'hôte:
docker run -d -v C:\Temp\123:C:\My\Shared\Dir testimage:latest