web-dev-qa-db-fra.com

Comment Docker pour Windows exécute-t-il les conteneurs Linux?

Dans les anciennes versions de Docker pour Windows, je me souviens qu'il disait explicitement qu'il utilisait un linux VM pour le noyau.

Mais depuis la nouvelle version stable (sortie en juillet 2016 je pense), ça dit

Docker for Windows is a native Windows application with a native user interface and auto-update capability, deeply integrated with Windows native virtualization, Hyper-V, networking and file system

Si je comprends bien, l'image de base spécifiée est pour l'espace utilisateur et le noyau de l'hôte est utilisé. Donc, si je spécifie que j'utilise une image de base ubuntu pour exécuter la commande echo, comment le noyau Windows entre-t-il en jeu?

Ou est-ce que je comprends mal quelque chose?

28
MrVoodoo

Docker pour Windows utilise toujours un Linux VM pour exécuter les conteneurs Linux. Mais au lieu d'utiliser Virtual Box (qui est utilisé avec Docker Toolbox), le Linux VM = est exécuté à l'aide d'Hyper-V - un hyperviseur natif de Windows. Cela signifie que Docker pour Windows expédie moins de composants et moins de pièces mobiles.

Si vous installez Docker pour Windows et exécutez docker version vous verrez que le démon Docker Linux fonctionne sur "Moby Linux".

29
friism