web-dev-qa-db-fra.com

Docker dans VirtualBox

En bref: est-il possible d'exécuter le conteneur Docker (Microsoft/windowsservercore) dans VirtualBox (Windows 10 Enterprise). Le système d'exploitation hôte est Windows 10 Professionnel?

Long: J'ai réussi à installer et à démarrer Docker dans VirtualBox (Win10Ent), mais lorsque j'essaie de créer un conteneur, j'obtiens l'erreur suivante:

docker.exe: Error response from daemon: container b9aef43f6b30853bc1f32fc663fdb5155a62f0dcb4be860c23a8b48fefae4d0a encountered an error during CreateContainer: failure in a Windows system call: No hypervisor is present on this system.

Ici est une question similaire et la conclusion est que VirtualBox ne prend pas en charge la virtualisation imbriquée, donc Docker ne peut pas être exécuté à l'intérieur.

Cela dit, quelle est l'option de la machine VirtualBox sous Paramètres -> Système -> Accélération -> Virtualisation matérielle? Pouvez-vous expliquer ce que cet onglet Paramètres signifie vraiment si VirtualBox ne prend pas en charge la virtualisation imbriquée?

7
Kamil_H

L'option de virtualisation matérielle de Virtualbox consiste à autoriser les capacités de virtualisation fournies par le processeur ( https://www.virtualbox.org/manual/ch10.html ). Cela n'aide pas avec la virtualisation imbriquée. Vous pouvez exécuter dans Docker dans Virtualbox tant qu'il n'y a pas d'hyperviseur en cours d'exécution à l'intérieur. C'est le cas lorsque nous exécutons Docker sur des systèmes Linux dans Virtualbox. Avec Windows Server, ils exécutent également hyperv sur lequel ils exécutent Windows Server sur lequel Docker s'exécute. C'est pourquoi la virtualisation imbriquée est nécessaire ici. Dans ce cas, utilisez quelque chose comme Vmware player qui prend en charge la virtualisation imbriquée. J'utilise VMware Player pour les cas où une virtualisation imbriquée est nécessaire. L'autre option consiste à utiliser un serveur Windows natif doté d'hyperv.

7
Sreeni