web-dev-qa-db-fra.com

Impossible de démarrer Docker dans Windows 10 - Une erreur Hyper-V est levée

J'obtiens l'erreur ci-dessous lors du démarrage de Docker dans Windows 10. N'importe qui peut me guider pour installer correctement Docker?

Unable to create: The running command stopped because the preference variable 
"ErrorActionPreference" or common parameter is set to Stop: Hyper-V encountered
an error trying to access an object on computer 'XXXX' because the object was not 
found. The object might have been deleted, or you might not have permission to 
perform the task. Verify that the Virtual Machine Management service on the 
computer is running. If the service is running, try to perform the task again by 
using Run as Administrator.
at New-MobyLinuxVM, <No file>: line 242
at <ScriptBlock>, <No file>: line 362
   at Docker.Backend.HyperV.RunScript(String action, Dictionary`2 parameters)
   at Docker.Backend.ContainerEngine.Linux.Start(Settings settings)
   at Docker.Core.Pipe.NamedPipeServer.<>c__DisplayClass8_0.<Register>b__0(Object[] parameters)
   at Docker.Core.Pipe.NamedPipeServer.RunAction(String action, Object[] parameters)

Versions

OS : Windows 10 Enterprise 
Version : 1607 
OS Build : 14393.576
Docker Version : 1.12.3 (Stable)
10
sankar

J'ai également rencontré ce même problème. Je l'ai résolu en supprimant toutes les machines virtuelles MobyLinuxVM. Voici ses étapes.

  1. Ouvrez Hyper-V Manager
  2. Sélectionnez tous les MobyLinuxVM des machines virtuelles.
  3. Faites un clic droit et supprimez toutes ces machines virtuelles.
  4. Redémarrez docker.

Ces étapes ont résolu ce problème sur mon système.

7
Ismail Zafar

Courir “MOFCOMP %SYSTEMROOT%\System32\WindowsVirtualization.V2.mof” à partir de l'invite de commandes en mode administrateur. Plus besoin de redémarrer la machine après cette exécution, cela a fonctionné pour moi.

6
Ankur Mukherjee

En supposant que vous essayez d'exécuter un conteneur Windows:

Cliquez avec le bouton droit sur l'icône de la barre d'état système Docker, puis sélectionnez "Basculer vers les conteneurs Windows".

Il vous faudra éventuellement redémarrer le système, mais ne tentera plus d'exécuter MobyLinuxVm comme mentionné dans votre message d'erreur.

Si cela aide quelqu'un, je suis sur Apple matériel (MacOS) exécutant Windows 10 VM via Parallels. Je me suis également assuré que sous mes paramètres parallèles> Processeurs et Mémoire> Avancé, j'avais activé les applications Hypervision.

4
ToddBFisher

Ce problème est très similaire à celui de l'autre question Docker - L'ordinateur 'WINDOWS10-ON-SE' n'a pas pu être résol

Voir ma réponse sur https://stackoverflow.com/a/45099242/279272

J'étais également confronté au même problème, mais il était de nature aléatoire, j'ai trouvé que cela était dû à une certaine inaccessibilité de la carte réseau par le script de démarrage du docker. Cette inaccessibilité bloque davantage le processus de démarrage de docker.

J'ai trouvé un hack et cela fonctionne bien sur ma machine Windows

Pirater

Ouvrez C:\Program Files\Docker\Docker\resources\mobylinux.ps1 Avec n'importe quel éditeur en mode administrateur. Trouvez le code suivant (autour de la ligne 164)

$networkAdapter | Remove-NetIPAddress -Confirm:$false -ea SilentlyContinue

$networkAdapter | Set-NetIPInterface -Dhcp Disabled -ea SilentlyContinue

$networkAdapter | New-NetIPAddress -AddressFamily IPv4 -IPAddress $switchAddress -PrefixLength ($SwitchSubnetMaskSize) -ea Stop | Out-Null

Ajoutez un return après la ligne 165 dans une nouvelle ligne comme ci-dessous et enregistrez le fichier.

$networkAdapter | Remove-NetIPAddress -Confirm:$false -ea SilentlyContinue

$networkAdapter | Set-NetIPInterface -Dhcp Disabled -ea SilentlyContinue

return

$networkAdapter | New-NetIPAddress -AddressFamily IPv4 -IPAddress $switchAddress -PrefixLength ($SwitchSubnetMaskSize) -ea Stop | Out-Null

Redémarrez maintenant docker et après le redémarrage, exécutez les commandes suivantes en mode dos admin pour configurer la carte réseau manuellement

netsh interface ipv4 set address name="vEthernet (DockerNAT)" static 10.0.75.1 255.255.255.0

Vous devez exécuter cette commande à chaque fois que vous effectuez un redémarrage du système et que le docker termine le processus de démarrage (pour une raison quelconque). CONSEIL: créez un fichier batch de cette commande et enregistrez-le à portée de main.

Remarque: Le hack ps serait annulé par toute mise à jour de docker. alors soyez conscient ...

1
Mukesh Agarwal

Pour moi, la mise à jour de Windows 10 Pro vers la version 1809 a résolu le problème

0
Panneerselvam

Sur Windows 10, j'ai résolu le problème en exécutant les étapes ci-dessous:

Version française de Windows:

  1. Fermer Docker Desktop
  2. Accéder au "Contrôle des applications et du navigateur"
  3. Cliquez sur "Paramètre d'exploit protection" sous "Exploit protection"
  4. Allez dans l'onglet "Paramètres du programme"
  5. Rechercher "C:\Windows\System32\vmcompute.exe" ou "vmcompute.exe"
  6. Cliquez sur mettre à jour et décochez toutes les cases relatives à toutes les configurations puis appliquez
  7. Réexécutez Docker Desktop

Version anglaise de Windows:

  1. Fermer Docker Desktop
  2. Allez dans "Contrôle des applications et du navigateur"
  3. Cliquez sur "Paramètres de protection contre les exploits" sous "Protection contre les exploits"
  4. Allez dans l'onglet "Paramètres du programme"
  5. Rechercher "C:\Windows\System32\vmcompute.exe" ou "vmcompute.exe"
  6. Cliquez sur mettre à jour et décochez toutes les cases relatives à toutes les configurations puis appliquez
  7. Réexécutez Docker Desktop

J'espère que cela aidera quelqu'un d'autre.

0