Inhaltsverzeichnis
Der Unterschied zwischen Docker und VM Virtual Machine
Heim Betrieb und Instandhaltung Docker Was ist der Unterschied zwischen einer virtuellen VM-Maschine und einem Docker?

Was ist der Unterschied zwischen einer virtuellen VM-Maschine und einem Docker?

Nov 29, 2021 am 11:33 AM
docker vmware

Unterschiede: 1. Docker-Container bieten prozessbasierte Isolation, während virtuelle VM-Maschinen eine vollständige Isolation von Ressourcen bieten. 2. Docker verwendet den Kernel des Host-Betriebssystems, während virtuelle VM-Maschinen unabhängige Kernel verwenden. 3. Docker-Startgeschwindigkeit befindet sich auf der zweiten Ebene und VM auf der Minutenebene 4. Die Integration von Docker ist besser als die von VM.

Was ist der Unterschied zwischen einer virtuellen VM-Maschine und einem Docker?

Die Betriebsumgebung dieses Tutorials: Linux 5.9.8-System, Docker-1.13.1 und VMware Workstation 16.0.0.16894299-Version, Dell G3-Computer.

Der Unterschied zwischen Docker und VM Virtual Machine

1. Wesentlicher Unterschied:

VM (VMware) erstellt eine virtuelle Ebene, eine virtuelle Maschine basierend auf der Hostmaschine und dem Betrieb der Hostmaschine systemisiertes Betriebssystem und virtualisiertes Warehouse und dann die Anwendung installieren;

Container (Docker-Container) erstellt eine Docker-Engine auf dem Host-Computer und dem Betriebssystem des Host-Computers und installiert dann die Anwendung basierend auf der Engine.

Docker-Container bieten prozessbasierte Isolierung, während virtuelle VM-Maschinen eine vollständige Isolierung von Ressourcen ermöglichen. Container verwenden den Kernel des Host-Betriebssystems, während virtuelle Maschinen einen separaten Kernel verwenden.

2. Nutzungsunterschiede:

Größe:

1. Von Ubuntu in der virtuellen Maschine belegter Speicher:                                Der von der Ubuntu-Imagedatei im Docker-Container belegte Speicher:

Startup:

Docker erstellt die Docker-Engine auf dem Betriebssystem des Host-Computers und ruft Hardwareressourcen direkt auf dem Betriebssystem des Host-Computers auf, anstatt das Betriebssystem und die Hardwareressourcen zu virtualisieren, sodass der Vorgang schnell ist. Dies ist tatsächlich die Installation einer virtuellen Ubuntu-Maschine und das Abrufen einer Docker-Ubuntu-Spiegeldatei. Der Unterschied ist offensichtlich, dass es mehr als 2 Minuten dauert.

Integration:

                    Docker verfügt über eine bessere Integration als VM.

Docker-Funktionen

1)

Schneller Einstieg

Benutzer können ihre eigenen Programme in nur wenigen Minuten „dockerisieren“. Docker basiert auf dem „Copy-on-Write“-Modell, wodurch die Anwendung sehr schnell geändert werden kann. Man kann sagen, dass es den Bereich „Der Code wird nach Belieben geändert“ erreicht.

Anschließend können Sie einen Container erstellen, um die Anwendung auszuführen. Die meisten Docker-Container starten in weniger als 1 Sekunde. Da der Overhead des Hypervisors entfällt, verfügen Docker-Container über eine hohe Leistung. Gleichzeitig können mehr Container auf demselben Host ausgeführt werden, sodass Benutzer die Systemressourcen so weit wie möglich nutzen können.

2)Logische Klassifizierung der Verantwortlichkeiten

Mit Docker müssen sich Entwickler nur um die in den Containern laufenden Anwendungen kümmern, während sich das Betriebs- und Wartungspersonal nur um die Verwaltung der Container kümmern muss. Der Zweck des Docker-Designs besteht darin, die Konsistenz zwischen der Entwicklungsumgebung, in der Entwickler Code schreiben, und der Produktionsumgebung, in der Anwendungen bereitgestellt werden, zu verbessern. Dadurch wird die Art von „Während der Entwicklung ist alles normal, es muss ein Betriebs- und Wartungsproblem sein (die Testumgebung ist normal, wenn nach dem Online-Gehen ein Problem auftritt, muss es sich um ein Betriebs- und Wartungsproblem handeln)“

3)

Schneller und effizienter Entwicklungslebenszyklus

Eines der Ziele von Docker ist es, den Codezyklus von der Entwicklung über das Testen bis hin zur Bereitstellung und dem Online-Betrieb zu verkürzen und Ihre Anwendung portabel, einfach zu erstellen und einfach zusammenzuarbeiten. (Laienhaft ausgedrückt ist Docker wie eine Kiste, die viele Objekte enthalten kann. Wenn Sie diese Objekte benötigen, können Sie sie direkt aus der großen Kiste nehmen, ohne sie einzeln aus der Kiste zu nehmen.)

4)

Serviceorientiert Architektur wird gefördert

Docker fördert auch serviceorientierte Architektur und Microservices-Architektur. Docker empfiehlt, dass ein einzelner Container nur eine Anwendung oder einen Prozess ausführt und so ein verteiltes Anwendungsmodell bildet. Bei diesem Modell können Anwendungen oder Dienste als eine Reihe intern miteinander verbundener Container dargestellt werden, wodurch eine verteilte Bereitstellung, Erweiterung oder Fehlerbehebung ermöglicht wird Die Anwendung wird sehr einfach und verbessert gleichzeitig die Selbstbeobachtung des Programms. (Natürlich können Sie mehrere Anwendungen in einem Container ausführen)

Empfohlenes Lernen: „

Docker-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen einer virtuellen VM-Maschine und einem Docker?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verpacken Sie ein Projekt mit Pycharm So verpacken Sie ein Projekt mit Pycharm Apr 25, 2024 am 03:54 AM

Es gibt vier Möglichkeiten, ein Projekt in PyCharm zu verpacken: Als separate ausführbare Datei verpacken: In das EXE-Einzeldateiformat exportieren. Als Installationsprogramm verpackt: Setuptools-Makefile generieren und erstellen. Als Docker-Image verpacken: Geben Sie einen Image-Namen an, passen Sie die Build-Optionen an und erstellen Sie. Als Container verpacken: Geben Sie das zu erstellende Image an, passen Sie die Laufzeitoptionen an und starten Sie den Container.

Docker schließt die lokale Bereitstellung des großen Open-Source-Modells LLama3 in drei Minuten ab Docker schließt die lokale Bereitstellung des großen Open-Source-Modells LLama3 in drei Minuten ab Apr 26, 2024 am 10:19 AM

Übersicht LLaMA-3 (LargeLanguageModelMetaAI3) ist ein groß angelegtes Open-Source-Modell für generative künstliche Intelligenz, das von Meta Company entwickelt wurde. Im Vergleich zur Vorgängergeneration LLaMA-2 gibt es keine wesentlichen Änderungen in der Modellstruktur. Das LLaMA-3-Modell ist in verschiedene Maßstabsversionen unterteilt, darunter kleine, mittlere und große, um unterschiedlichen Anwendungsanforderungen und Rechenressourcen gerecht zu werden. Die Parametergröße kleiner Modelle beträgt 8 B, die Parametergröße mittlerer Modelle beträgt 70 B und die Parametergröße großer Modelle erreicht 400 B. Beim Training besteht das Ziel jedoch darin, multimodale und mehrsprachige Funktionalität zu erreichen, und die Ergebnisse werden voraussichtlich mit GPT4/GPT4V vergleichbar sein. Ollama installierenOllama ist ein Open-Source-Großsprachenmodell (LL

Architektur und Praxis verteilter PHP-Systeme Architektur und Praxis verteilter PHP-Systeme May 04, 2024 am 10:33 AM

Die verteilte PHP-Systemarchitektur erreicht Skalierbarkeit, Leistung und Fehlertoleranz durch die Verteilung verschiedener Komponenten auf mit dem Netzwerk verbundene Maschinen. Die Architektur umfasst Anwendungsserver, Nachrichtenwarteschlangen, Datenbanken, Caches und Load Balancer. Zu den Schritten zur Migration von PHP-Anwendungen auf eine verteilte Architektur gehören: Identifizieren von Dienstgrenzen, Auswählen eines Nachrichtenwarteschlangensystems, Einführung eines Microservices-Frameworks, Bereitstellung für die Containerverwaltung, Diensterkennung

PI -Knotenunterricht: Was ist ein PI -Knoten? Wie installiere und richte ich einen PI -Knoten ein? PI -Knotenunterricht: Was ist ein PI -Knoten? Wie installiere und richte ich einen PI -Knoten ein? Mar 05, 2025 pm 05:57 PM

Detaillierte Erläuterungs- und Installationshandbuch für Pinetwork -Knoten In diesem Artikel wird das Pinetwork -Ökosystem im Detail vorgestellt - PI -Knoten, eine Schlüsselrolle im Pinetwork -Ökosystem und vollständige Schritte für die Installation und Konfiguration. Nach dem Start des Pinetwork -Blockchain -Testnetzes sind PI -Knoten zu einem wichtigen Bestandteil vieler Pioniere geworden, die aktiv an den Tests teilnehmen und sich auf die bevorstehende Hauptnetzwerkveröffentlichung vorbereiten. Wenn Sie Pinetwork noch nicht kennen, wenden Sie sich bitte an was Picoin ist? Was ist der Preis für die Auflistung? PI -Nutzung, Bergbau und Sicherheitsanalyse. Was ist Pinetwork? Das Pinetwork -Projekt begann 2019 und besitzt seine exklusive Kryptowährung PI -Münze. Das Projekt zielt darauf ab, eine zu erstellen, an der jeder teilnehmen kann

Agile Entwicklung und Betrieb der PHP-Microservice-Containerisierung Agile Entwicklung und Betrieb der PHP-Microservice-Containerisierung May 08, 2024 pm 02:21 PM

Antwort: PHP-Microservices werden mit HelmCharts für eine agile Entwicklung bereitgestellt und mit DockerContainer für Isolation und Skalierbarkeit in Containern verpackt. Detaillierte Beschreibung: Verwenden Sie HelmCharts, um PHP-Microservices automatisch bereitzustellen, um eine agile Entwicklung zu erreichen. Docker-Images ermöglichen eine schnelle Iteration und Versionskontrolle von Microservices. Der DockerContainer-Standard isoliert Microservices und Kubernetes verwaltet die Verfügbarkeit und Skalierbarkeit der Container. Verwenden Sie Prometheus und Grafana, um die Leistung und den Zustand von Microservices zu überwachen und Alarme und automatische Reparaturmechanismen zu erstellen.

So installieren Sie Deepseek So installieren Sie Deepseek Feb 19, 2025 pm 05:48 PM

Es gibt viele Möglichkeiten, Deepseek zu installieren, einschließlich: kompilieren Sie von Quelle (für erfahrene Entwickler) mit vorberechtigten Paketen (für Windows -Benutzer) mit Docker -Containern (für bequem am besten, um die Kompatibilität nicht zu sorgen), unabhängig von der Methode, die Sie auswählen, bitte lesen Die offiziellen Dokumente vorbereiten sie sorgfältig und bereiten sie voll und ganz vor, um unnötige Schwierigkeiten zu vermeiden.

Wie kann die Leistung von Java-Funktionen durch Containerisierung optimiert werden? Wie kann die Leistung von Java-Funktionen durch Containerisierung optimiert werden? Apr 29, 2024 pm 03:09 PM

Die Containerisierung verbessert die Leistung von Java-Funktionen auf folgende Weise: Ressourcenisolation – Gewährleistung einer isolierten Computerumgebung und Vermeidung von Ressourcenkonflikten. Leicht – beansprucht weniger Systemressourcen und verbessert die Laufzeitleistung. Schneller Start – reduziert Verzögerungen bei der Funktionsausführung. Konsistenz – Entkoppeln Sie Anwendungen und Infrastruktur, um ein konsistentes Verhalten in allen Umgebungen sicherzustellen.

Stellen Sie JavaEE-Anwendungen mithilfe von Docker-Containern bereit Stellen Sie JavaEE-Anwendungen mithilfe von Docker-Containern bereit Jun 05, 2024 pm 08:29 PM

Stellen Sie Java EE-Anwendungen mithilfe von Docker-Containern bereit: Erstellen Sie eine Docker-Datei, um das Image zu definieren, erstellen Sie das Image, führen Sie den Container aus, ordnen Sie den Port zu und greifen Sie dann im Browser auf die Anwendung zu. Beispiel für eine JavaEE-Anwendung: Die REST-API interagiert mit der Datenbank und ist nach der Bereitstellung über Docker auf localhost zugänglich.

See all articles