Der Hauptunterschied zwischen Docker und virtuellen Maschinen:
Docker ist eine Open-Source-Anwendungscontainer-Engine, die es Entwicklern ermöglicht, ihre Anwendungen und Abhängigkeiten zu paketieren werden in einen tragbaren Container gepackt und dann auf jede gängige Linux-Maschine verteilt, die auch virtualisiert werden kann. Container nutzen vollständig den Sandbox-Mechanismus und haben keine Schnittstellen untereinander.
Virtuelle Maschine (Virtuelle Maschine) bezieht sich auf ein vollständiges Computersystem mit vollständigen Hardwaresystemfunktionen, das durch Software simuliert wird und in einer vollständig isolierten Umgebung läuft.
Der Unterschied zwischen virtuellen Maschinen und Containern
Startzeit: Docker startet in Sekunden und virtuelle Maschinen starten in Minuten.
Leicht: Die Größe des Docker-Images wird normalerweise in M und die Größe der virtuellen Maschine in G angegeben. Container beanspruchen nur geringe Ressourcen und lassen sich schneller bereitstellen als virtuelle Maschinen.
Leistung: Docker teilt sich den Host-Kernel, Virtualisierung auf Systemebene, beansprucht weniger Ressourcen, hat keinen Overhead der Hypervisor-Schicht und seine Leistung kommt im Wesentlichen der einer physischen Maschine nahe; die virtuelle Maschine erfordert Unterstützung der Hypervisor-Schicht , virtualisiert einige Geräte und verfügt über ein vollständiges GuestOS. Der Virtualisierungsaufwand ist groß, wodurch die Leistung verringert wird und nicht so gut ist wie die Containerleistung.
Sicherheit: Da der Host-Kernel gemeinsam genutzt wird, handelt es sich nur um eine Isolation auf Prozessebene, sodass die Isolation und Stabilität nicht so gut sind wie die der virtuellen Maschine, die über bestimmte Berechtigungen für den Zugriff auf den Host-Kernel verfügt birgt gewisse Sicherheitsrisiken.
Nutzungsanforderungen: Die VM ist vollständig hardwarebasiert virtualisiert und erfordert die Unterstützung der Hardware-CPU-Virtualisierungstechnologie. Docker teilt den Host-Kernel und kann auf gängigen Linux-Distributionen ausgeführt werden, unabhängig davon, ob die CPU die Virtualisierungstechnologie unterstützt.
Weitere verwandte Tutorials finden Sie in der Spalte Docker-Tutorial auf der chinesischen PHP-Website.
Das obige ist der detaillierte Inhalt vonDer Hauptunterschied zwischen Docker und virtuellen Maschinen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!