Seit der Geburt der Containerisierungstechnologie hat sich Docker zu einem führenden Unternehmen auf diesem Gebiet entwickelt. Allerdings wird eine Stimme immer lauter, und die hat damit zu tun, dass Docker kein „Container“ ist. Dieser Satz ist unglaublich, denn Docker war schon immer ein Synonym für Containerisierungstechnologie und die Leute sprechen von Docker Container.
Warum sagen manche Leute, dass Docker kein „Container“ ist? Wie ist dieses Problem zu verstehen? In diesem Artikel wird analysiert, warum Docker aus Sicht der technischen Implementierungsprinzipien und -philosophie kein „Container“ ist.
- Technisches Implementierungsprinzip
Die ursprüngliche Idee von Docker ist nicht die Containerisierung, sondern die Kapselung auf Basis von LXC (Linux Container) und die Bereitstellung einer Reihe von REST-APIs, um Anwendungsentwicklern die Verwendung zu erleichtern. Dies ist die ursprüngliche Idee von Docker. Die Docker-Technologie unterstützt zunächst Einzelprozessprogramme, die auf der Übermittlung einer Bildbilddatei basieren. Sobald das Bild übermittelt wurde, kann Docker einen oder mehrere Container über das Bild starten und der Anwendungsprozess wird im Container ausgeführt.
Im Vergleich zu herkömmlichen Virtualisierungstechnologien (wie VMWare, Virtual Box) verwendet Docker eine Isolierung auf Prozessebene, d. h. mehrere Container auf demselben Host können denselben Betriebssystemkernel gemeinsam nutzen. Dadurch kann viel Ressourcenaufwand eingespart und Funktionen wie schnelle Bereitstellung, schneller Start, schnelle Migration und Versionsverwaltung werden problemlos erreicht.
Tatsächlich hat die Docker-Technologie die ursprüngliche LXC-Technologie verbessert und in eine leichtere und leistungsstärkere Container-Engine gekapselt. Aus dieser Perspektive ist Docker keine native Containertechnologie, sondern eine Kapselung und Erweiterung von Containern. Daher sagen einige Leute, dass Docker kein „Container“ ist.
- Philosophische Ebene
Darüber hinaus ist auf der philosophischen Ebene von Docker noch ein weiteres Problem zu berücksichtigen, das nicht alle Aspekte der Installation, Konfiguration, des Betriebs und der Entfernung von „Containern“ verwaltet. In Docker werden Image-Erstellung, Aktualisierung und Versionskontrolle immer noch von den Entwicklern selbst verwaltet. Dies bedeutet, dass Docker keinen einheitlichen Mechanismus zur Verwaltung von Containern und Bildern vollständig entwickelt hat, was mehr oder weniger manuelle Arbeit erfordert.
Außerdem kapselt Docker die zugrunde liegende Container-Technologie zu sehr, was sie zu komplex und für Anfänger leicht verwirrend macht. Und es enthält zu viele Fallstricke und Einschränkungen, was die Containerisierung erschwert, eine Methode, die den Prozess ursprünglich vereinfacht.
Aus dieser Perspektive, insbesondere aus der technischen Implementierungsebene, kann Docker nicht als „Container“ klassifiziert werden, da es mechanisch noch verbessert werden muss.
- Ist Docker ein Container?
Da die Antwort auf die beiden oben genannten Punkte „Nein“ lautet, welche Art und Eigenschaften hat das Docker-System? Es besteht kein Zweifel, dass Docker eine Lösung für die Bereitstellung und Verwaltung von Anwendungsumgebungen ist, die eng mit der Containertechnologie verbunden ist. Die Vorteile von Docker liegen in seiner hervorragenden Bedienfreundlichkeit, dem effizienten Sandbox-Mechanismus, den praktischen Methoden zur Image-Erstellung und -Freigabe sowie in der einfachen Bereitstellung von Containern. Was Docker den Menschen bietet, ist eine wissenschaftlichere, schnellere und bequemere Bereitstellungsmethode. Daher kann Docker eher als Anwendungsumgebungslösung denn als „Container“-Trockenmasse betrachtet werden.
Zusammenfassung
Dieser Artikel erklärt, warum manche Leute sagen, dass Docker kein „Container“ ist, und zwar aus zwei Aspekten: dem Implementierungsprinzip der Docker-Technologie und der philosophischen Ebene. Tatsächlich ist Docker als Lösung für die Bereitstellung und Verwaltung von Anwendungsumgebungen definiert. Dies bedeutet nicht, dass Docker die Containertechnologie ersetzt oder nicht erfordert, sondern zeigt, dass die Docker-Technologie auf der Weiterentwicklung der Containertechnologie basiert und den Wert der Containertechnologie besser ausschöpft. Obwohl es sich bei der Natur und den Eigenschaften von Docker nicht um Container handelt, stellen die von Docker vorgenommenen Änderungen einen großen Fortschritt in der Anwendungsumgebungsverwaltung dar und bringen großen Komfort und Flexibilität.
Das obige ist der detaillierte Inhalt vonWarum Docker kein Container ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwenden Sie Docker und Kubernetes, um skalierbare Anwendungen zu erstellen. 1) Erstellen Sie Containerbilder mit DockerFile, 2) Bereitstellung und Service von Kubernetes über den Befehl kubectl, 3) Verwenden Sie Horizontalpodautoscaler, um eine automatische Skalierung zu erreichen, wodurch eine effiziente und skalierbare Anwendungsarchitektur erstellt wird.

Der Hauptunterschied zwischen Docker und Kubernetes besteht darin, dass Docker für die Containerisierung verwendet wird, während Kubernetes zur Containerorchestrierung verwendet wird. 1.Docker bietet eine konsistente Umgebung, um Anwendungen zu entwickeln, zu testen und bereitzustellen und die Isolations- und Ressourcenbeschränkung durch Container zu implementieren. 2. Kubernetes verwaltet Containeranwendungen, bietet automatisierte Funktionen für die Bereitstellung, Erweiterung und Verwaltung und unterstützt Lastausgleich und automatische Skalierung. Die Kombination der beiden kann die Anwendungsbereitstellung und -management -Effizienz verbessern.

Wenn Sie Docker unter Linux installieren und konfigurieren, müssen Sie sicherstellen, dass das System 64-Bit- und Kernel-Version 3.10 und höher ist. Verwenden Sie den Befehl "sudoapt-getupdate" und installieren Sie ihn mit dem Befehl "sudoapt-getupdate" und verifizieren Sie es mit "sudoapt-getupdate" und. Docker verwendet den Namespace- und Kontrollgruppen des Linux -Kernels, um die Isolation und Ressourcenbeschränkung der Container zu erreichen. Das Bild ist eine schreibgeschützte Vorlage, und der Container kann geändert werden. Beispiele für die Nutzung sind das Ausführen eines Nginx -Servers und das Erstellen von Bildern mit benutzerdefinierten Dockerfiles. gemeinsam

Der Grund für die Verwendung von Docker ist, dass es eine effiziente, tragbare und konsistente Umgebung zum Verpacken, Verteilern und Ausführen von Anwendungen bietet. 1) Docker ist eine Containerplattform, mit der Entwickler Anwendungen und ihre Abhängigkeiten in leichte, tragbare Container verpacken können. 2) Es basiert auf Linux -Container -Technologie und gemeinsamem Dateisystem, um einen schnellen Start und einen effizienten Betrieb zu gewährleisten. 3) Docker unterstützt die mehrstufige Konstruktion und optimiert die Bildgröße und die Bereitstellungsgeschwindigkeit. 4) Die Verwendung von Docker kann die Entwicklungs- und Bereitstellungsprozesse vereinfachen, die Effizienz verbessern und die Konsistenz über Umgebungen hinweg sicherstellen.

Zu den Anwendungsszenarien von Docker in tatsächlichen Projekten gehören die Vereinfachung der Bereitstellung, die Verwaltung von Anwendungen mit mehreren Container und die Leistungsoptimierung. 1.Docker vereinfacht die Anwendungsbereitstellung, z. 2. DockerCompon verwaltet Multicontainer-Anwendungen wie Web- und Datenbankdienste in der Microservice-Architektur. 3. Die Leistungsoptimierung verwendet eine mehrstufige Konstruktion, um die Bildgröße zu verringern und den Containerstatus durch Gesundheitsprüfungen zu überwachen.

Wählen Sie Docker in einer kleinen Projekt- oder Entwicklungsumgebung und Kubernetes in einer großen Projekt- oder Produktionsumgebung. 1.Docker eignet sich für schnelle Iteration und Tests, 2. Kubernetes bietet leistungsstarke Container -Orchestrierungsfunktionen, die für die Verwaltung und Erweiterung großer Anwendungen geeignet sind.

Docker ist wichtig unter Linux, da Linux seine native Plattform ist, die reichhaltige Tools und Community -Unterstützung bietet. 1. Installieren Sie Docker: Verwenden Sie Sudoapt-Getupdate und sudoapt-getinstalldocker-cedocker-ce-clicotainerd.io. 2. Erstellen und Verwalten von Containern: Verwenden Sie Dockerrun-Befehle wie Dockerrun-d-namemyninx-p80: 80Nginx. 3. Schreiben Sie Dockerfile: Optimieren Sie die Bildgröße und verwenden Sie mehrstufige Konstruktionen. 4. Optimierung und Debugging: Verwenden Sie Dockerlogs und Dockerex

Docker ist ein Containerisierungstool, und Kubernetes ist ein Container -Orchestrierungs -Tool. 1. Docker-Paket-Anwendungen und ihre Abhängigkeiten in Container, die in jeder Docker-fähigen Umgebung ausgeführt werden können. 2. Kubernetes verwaltet diese Container, implementiert automatisierte Bereitstellung, Skalierung und Verwaltung und die effiziente Ausführung von Anwendungen.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor
