Zusammenfassung der Docker-Datenspeicherung

Zusammenfassung der Docker-Datenspeicherung

Bevor Sie diesen Artikel lesen, hoffe ich, dass Sie über ein grundlegendes Verständnis von Volumes, Bind-Mounts und tmpfs-Mounts verfügen. Weitere Einzelheiten finden Sie in den folgenden Artikeln:

  • Docker-Datenspeichervolumes
  • Docker-Datenspeicher Bind-Mounts
  • Docker-Datenspeicher-TMPFs-Mounts

Die folgende Abbildung zeigt die Unterschiede zwischen Volumes, Bind-Mounts und tmpfs-Mounts:

Volume-Nutzungsszenarien

  • Teilen Sie Daten zwischen mehreren Containern.
  • Es gibt keine Möglichkeit sicherzustellen, dass der Docker-Host eine bestimmte Ordner- oder Verzeichnisstruktur hat. Die Verwendung von Volumes kann diese Hostunterschiede maskieren.
  • Wenn Sie Ihre Daten auf einem Remote-Host oder bei einem Cloud-Anbieter speichern möchten.
  • Wenn Sie Daten von einem Docker-Host auf einen anderen sichern, wiederherstellen oder migrieren möchten, sind Volumes die bessere Wahl.

Anwendungsfälle für Bind-Mounts

  • Geben Sie Konfigurationsdateien zwischen dem Host und dem Container frei. Wenn Sie beispielsweise die Konfigurationsdatei des Nginx-Containers auf dem Hostcomputer speichern und über Bind-Mounts mounten, müssen Sie den Container nicht aufrufen, um die Nginx-Konfiguration zu ändern.
  • Geben Sie Code oder Build-Ausgabe zwischen dem Host und dem Container frei. Sie können beispielsweise das Zielverzeichnis eines Projekts auf dem Host in den Container einbinden. Wenn Maven auf diese Weise ein neues Produkt auf dem Host erstellt, kann es direkt im Container ausgeführt werden, ohne dass ein neues Image generiert werden muss.
  • Die Datei- bzw. Verzeichnisstruktur auf dem Docker-Host wird bestimmt

Anwendungsfälle für tmpfs-Mounts

  • Wenn Sie aus Sicherheitsgründen oder anderen Gründen keine Daten im Container oder Host speichern möchten, können Sie den tmpfs-Mount-Modus verwenden.

Unterschiede im Verhalten zwischen Bind Mounts und Volumes

  • Wenn Sie ein leeres Volume in ein nicht leeres Containerverzeichnis mounten, werden die Dateien im Containerverzeichnis auf das Volume kopiert, d. h., die Originaldateien im Containerverzeichnis werden nicht durch das Volume überschrieben.
  • Wenn Sie Bind-Mounts verwenden, um ein Host-Verzeichnis in ein Container-Verzeichnis einzubinden, werden die Originaldateien im Container-Verzeichnis ausgeblendet, sodass nur die Dateien im Host-Verzeichnis gelesen werden können.

Verweise

https://docs.docker.com/storage/#good-use-cases-for-tmpfs-mounts

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • So ändern Sie den Speicherort von Docker-Standardimages und -Containern
  • Detaillierte Erläuterung der persistenten Speicherung und Datenfreigabe von Docker
  • Detaillierte Erklärung der Docker-Datenspeichervolumes
  • Einführung in den Docker-Speichertreiber
  • Detaillierte Erklärung der Bind-Mounts für die Docker-Datenspeicherung
  • Detaillierte Erklärung der TMPF-Mounts im Docker-Datenspeicher
  • Lösung für das Problem des unzureichenden Speicherressourcenpools des Docker-Servers

<<:  Detaillierte Erläuterung der ersten Verwendung von Promise in der asynchronen JavaScript-Programmierung

>>:  Die wichtigsten Unterschiede zwischen MySQL 4.1/5.0/5.1/5.5/5.6

Artikel empfehlen

MySQL: Datenintegrität

Die Datenintegrität wird in Entitätsintegrität, D...

Über die Überlappung von Randwert und vertikalem Rand in CSS

Rand paralleler Boxen (Überlappung doppelter Ränd...

Welche Schleife ist in JavaScript die schnellste?

Wenn wir wissen, welche For-Schleife oder welcher...

Detailliertes Tutorial zum verteilten Betrieb von JMeter in der Docker-Umgebung

1. Erstellen Sie das Basisimage von jmeter Das Do...

Grundlegende Verwendung der JS-Datumssteuerung My97DatePicker

My97DatePicker ist ein sehr flexibles und benutze...

Kurze Analyse des MySQL B-Tree-Index

B-Baum-Index Verschiedene Speicher-Engines können...

Schritte zum Übertragen des neuen Kernels auf das Linux-System

1. Laden Sie das Ubuntu16.04-Image und den entspr...

Das rel-Attribut des HTML-Link-Tags

Das <link>-Tag definiert die Beziehung zwis...

Eine kurze Erläuterung zum eleganten Löschen großer Tabellen in MySQL

Inhaltsverzeichnis 1. Truncate-Operation 1.1 Welc...

So zeichnen Sie eine Schaltfläche in XAML als Kreis neu

Beim Verwenden des XAML-Layouts müssen manchmal ei...