Heim Betrieb und Instandhaltung Docker Gibt es einen Leistungseinbruch bei Docker?

Gibt es einen Leistungseinbruch bei Docker?

Jun 11, 2020 am 10:52 AM
docker

Gibt es einen Leistungseinbruch bei Docker?

Gibt es einen Leistungsverlust in Docker?

Docker weist einen Leistungsverlust auf, der jedoch im Vergleich zu den hervorragenden Funktionen von Docker vernachlässigbar ist. Docker ist eine Open-Source-Anwendungscontainer-Engine, mit der Entwickler Pakete erstellen können in einen Container und dann veröffentlicht, um auf jedem gängigen Linux-Rechner ausgeführt zu werden.

Docker

Docker ist eine Open-Source-Anwendungscontainer-Engine, die es Entwicklern ermöglicht, ihre Anwendungen und Abhängigkeiten in tragbare Container zu packen Dann wird es auf jeder gängigen Linux- oder Windows-Maschine veröffentlicht, und die Container nutzen vollständig den Sandbox-Mechanismus und haben keine Schnittstellen untereinander.

Ein kompletter Docker besteht aus folgenden Teilen:

  • DockerClient

  • Docker Daemon

  • Docker-Image

  • DockerContainer-Container

Docker-Prinzip

Das Kernproblem von Docker Die Lösung besteht darin, LXC zur Implementierung VM-ähnlicher Funktionen zu verwenden und so sparsamere Hardwareressourcen zu nutzen, um Benutzern mehr Rechenressourcen zur Verfügung zu stellen. Im Gegensatz zur VM-Methode handelt es sich bei LXC nicht um eine Reihe von Hardware-Virtualisierungsmethoden. Es kann nicht in vollständige Virtualisierung, Teilvirtualisierung und Paravirtualisierung eingeteilt werden, sondern ist eine Virtualisierungsmethode auf Betriebssystemebene, die möglicherweise nicht leicht zu verstehen ist als VM. Wir beginnen also mit den Problemen, die Docker durch die Virtualisierung lösen muss, um zu sehen, wie es die Virtualisierungsanforderungen der Benutzer erfüllt.

Benutzer müssen Virtualisierungsmethoden in Betracht ziehen, insbesondere Hardware-Virtualisierungsmethoden, die hauptsächlich die folgenden 4 Probleme lösen müssen:

  • Isolation – alle Benutzerinstanzen sind voneinander isoliert und beeinflussen sich nicht gegenseitig. Die durch die Hardware-Virtualisierungsmethode angegebene Methode ist VM, die durch LXC angegebene Methode ist Container und die detailliertere Methode ist Kernel-Namespace

  • Kontingent/messbar – jede Benutzerinstanz kann aktiviert sein- Nachfrage Bei der Bereitstellung seiner Rechenressourcen können die genutzten Ressourcen gemessen werden. Die Hardware-Virtualisierungsmethode kann einfach implementiert werden, da sie die CPU und den Speicher virtualisiert. LXC verwendet hauptsächlich Cgroups zur Steuerung von Ressourcen.

  • Mobilität – Benutzerinstanzen können einfach kopiert, verschoben und neu erstellt werden. Die Hardware-Virtualisierungsmethode stellt Snapshots und Bilder für die Implementierung bereit, und Docker verwendet (hauptsächlich) AUFS, um

  • Sicherheit zu implementieren – dieses Thema ist relativ groß und der Schwerpunkt liegt hier auf dem Schutz des Containers so viel wie möglich aus der Perspektive des Gastgebers. Bei der Hardware-Virtualisierungsmethode werden Benutzerprozesse übersetzt und in virtuellen Maschinencontainern wie KVM ausgeführt, da der Virtualisierungsgrad relativ hoch ist. Bei LXC ist der Benutzerprozess jedoch nur ein untergeordneter Prozess des lxc-start-Prozesses Der Namespace des Kernels ist isoliert, daher sind einige Kernel-Patches erforderlich, um sicherzustellen, dass der Host nicht böswillig in die Betriebsumgebung eindringt. Dotcloud verwendet zur Lösung dieses Problems hauptsächlich den Kernel-Grsec-Patch


Empfohlenes Tutorial: „

Docker


Das obige ist der detaillierte Inhalt vonGibt es einen Leistungseinbruch bei 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

Video Face Swap

Video Face Swap

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

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 verlassen Sie den Container mit Docker So verlassen Sie den Container mit Docker Apr 15, 2025 pm 12:15 PM

Vier Möglichkeiten zum Beenden von Docker Container: Verwenden Sie Strg D im Befehl Container Terminal ENGEBOT IM Container Terminal verwenden Sie Docker Stop & lt; container_name & gt; Befehl verwenden Sie Docker Kill & lt; container_name & gt; Befehl im Host -Terminal (Force Exit)

So kopieren Sie Dateien in Docker nach außen So kopieren Sie Dateien in Docker nach außen Apr 15, 2025 pm 12:12 PM

Methoden zum Kopieren von Dateien in externen Hosts in Docker: Verwenden Sie den Befehl Docker CP: Docker CP [Optionen] & lt; Containerpfad & gt; & lt; Host -Pfad & gt;. Verwenden von Datenvolumina: Erstellen Sie ein Verzeichnis auf dem Host und verwenden Sie den Parameter -V, um das Verzeichnis in den Container zu montieren, um den Container zu erstellen, um eine bidirektionale Dateisynchronisation zu erreichen.

So aktualisieren Sie das Bild von Docker So aktualisieren Sie das Bild von Docker Apr 15, 2025 pm 12:03 PM

Die Schritte zur Aktualisierung eines Docker -Images sind wie folgt: Ziehen Sie das neueste Bild -Tag. Neues Bild Löschen Sie das alte Bild für ein bestimmtes Tag (optional) den Container neu (falls erforderlich) neu starten Sie neu (falls erforderlich).

So überprüfen Sie den Namen des Docker -Containers So überprüfen Sie den Namen des Docker -Containers Apr 15, 2025 pm 12:21 PM

Sie können den Namen des Docker -Containers abfragen, indem Sie den Schritten folgen: Alle Container auflisten (Docker PS). Filtern Sie die Containerliste (unter Verwendung des GREP -Befehls). Ruft den Containernamen ab (befindet sich in der Spalte "Namen").

So starten Sie Docker neu So starten Sie Docker neu Apr 15, 2025 pm 12:06 PM

So starten Sie den Docker -Container neu: Holen Sie sich die Container -ID (Docker PS); Stop den Container (Docker Stop & lt; Container_id & gt;); Starten Sie den Container (Docker start & lt; container_id & gt;); Stellen Sie sicher, dass der Neustart erfolgreich ist (Docker PS). Andere Methoden: Docker Compose (Docker-Compose Neustart) oder Docker-API (siehe Docker-Dokumentation).

So sehen Sie den Docker -Prozess So sehen Sie den Docker -Prozess Apr 15, 2025 am 11:48 AM

Docker Process Viewing -Methode: 1. Docker Cli -Befehl: Docker PS; 2. SYSTEMD CLI -Befehl: SystemCTL Status Docker; 3.. Docker Compose CLI Command: Docker-Compose PS; 4. Process Explorer (Windows); 5. /proc -Verzeichnis (Linux).

So starten Sie MySQL von Docker So starten Sie MySQL von Docker Apr 15, 2025 pm 12:09 PM

Der Prozess des Startens von MySQL in Docker besteht aus den folgenden Schritten: Ziehen Sie das MySQL -Image zum Erstellen und Starten des Containers an, setzen

So verwenden Sie Docker Desktop So verwenden Sie Docker Desktop Apr 15, 2025 am 11:45 AM

Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

See all articles