web-dev-qa-db-fra.com

docker n'est pas VM, pourquoi le conteneur a besoin d'une image de base OS?

On dit que docker n'est pas un VM et les conteneurs s'exécutent directement sur l'hôte.

Mais pourquoi les conteneurs ont-ils besoin d'un système d'exploitation d'image de base?

Si le processus dans des conteneurs s'exécute sur le système d'exploitation de l'image de base, quelle est la différence entre un VM et docker (seul le système d'exploitation de l'image de base peut être réutilisé et conservé en lecture seule?)

Et pourquoi démarre-t-il plus rapidement qu'une machine virtuelle?

Qu'est-ce qui constitue un système d'exploitation d'image de base? noyau, rootfs ou les deux?

58
cola

Vous voudrez peut-être faire référence à cet article de blog: http://www.activestate.com/blog/2013/06/solomon-hykes-explains-docker

En termes simples, Docker effectue une isolation des processus en utilisant LXC (une sorte de virtualisation légère intégrée au noyau Linux). La différence fondamentale entre LXC et les VM est qu'avec LXC il n'y a qu'une seule instance de noyau Linux en cours d'exécution. Le système d'exploitation de l'image de base est utilisé pour le système de fichiers, les binaires, etc.

20
ondrasek