Erste Schritte mit Datenvolumes Wenn wir im vorherigen Fall Daten vom Host in den Container kopieren müssen, verwenden wir normalerweise den Kopierbefehl von Docker, aber die Leistung ist immer noch etwas schlecht. Gibt es keine Möglichkeit, diese Kopie auf die E/A-Leistung der lokalen Festplatte zu bringen? haben! Datenvolumes können das Kopiersystem umgehen und Verzeichnisse oder Dateien zwischen mehreren Containern oder zwischen Containern und dem Host gemeinsam nutzen. Datenvolumes umgehen das Kopiersystem und können lokale Festplatten-E/A-Leistung erzielen. Dieser Artikel veranschaulicht den Lesern zunächst anhand eines einfachen Falles die grundsätzliche Nutzung von Datenmengen. Am Beispiel des oben verwendeten Nginx-Images können Sie beim Ausführen des Containers mit dem folgenden Befehl ein Datenvolumen angeben: docker run -itd --name nginx -v /usr/share/nginx/html/ -p 80:80 bc26f1ed35cf Der Operationseffekt ist wie folgt: An diesem Punkt haben wir ein Datenvolumen erstellt und es im Verzeichnis Verwenden Sie als Nächstes den Befehl „Docker Inspection“, um die Details des soeben erstellten Containers anzuzeigen und das Datenvolumenzuordnungsverzeichnis wie folgt zu finden: Wie Sie sehen, verwendet Docker standardmäßig das Verzeichnis Zu diesem Zeitpunkt wurde festgestellt, dass der Dateiinhalt in diesem Verzeichnis mit dem Dateiinhalt im Verzeichnis Tipps: Da Docker auf dem Mac etwas Besonderes ist, kann das oben genannte Verzeichnis /var/lib/xxxx direkt aufgerufen werden, wenn es sich in einer Linux-Umgebung befindet. Wenn es sich auf einem Mac befindet, müssen Sie zuerst den folgenden Befehl ausführen, um das Verzeichnis /var/lib/xxx in der neu eingegebenen Befehlszeile aufzurufen: Bildschirm ~/Library/Containers/com.docker.docker/Data/vms/0/tty Ändern Sie als Nächstes den Inhalt der Datei index.html in der Datei wie folgt: echo "hallo volumes">index.html Kehren Sie nach Abschluss der Änderung zum Browser zurück und geben Sie http://localhost ein, um die Daten auf der Seite index.html in nginx anzuzeigen. Stellen Sie fest, dass sie sich geändert haben. Dies zeigt an, dass die Dateien auf dem Hostcomputer mit dem Container geteilt werden. Kombiniert mit dem Hostverzeichnis Die Verwendung von Datenvolumes im obigen Beispiel ist nicht die beste Lösung. Generell müssen wir möglicherweise explizit angeben, dass ein Verzeichnis auf dem Hostcomputer in den Container eingebunden werden soll. Die Angabemethode lautet wie folgt: docker run -itd --name nginx -v /Benutzer/sang/blog/docker/docker/:/usr/share/nginx/html/ -p 80:80 bc26f1ed35cf Dadurch wird Diese Verwendung ist sehr praktisch für Entwicklung und Tests, da der Container nicht erneut bereitgestellt oder neu gestartet werden muss. Hinweis: Die Hostadresse ist ein absoluter Pfad Weitere Operationen Datenvolumen im Dockerfile Wenn der Entwickler Dockerfile zum Erstellen des Images verwendet, kann er beim Erstellen des Images auch das Datenvolumen deklarieren, zum Beispiel: VON nginx HINZUFÜGEN https://www.baidu.com/img/bd_logo1.png /usr/share/nginx/html/ RUN echo "hallo Docker-Volume!">/usr/share/nginx/html/index.html VOLUMEN /usr/share/nginx/html/ Auf diese Weise wird ein anonymes Datenvolumen konfiguriert. Während des Betriebs werden Daten in das Verzeichnis Alle Datenmengen anzeigen Um alle Datenvolumes anzuzeigen, verwenden Sie den folgenden Befehl: Docker-Volumen ls Wie in der Abbildung gezeigt: Details zum Datenvolumen anzeigen Sie können Datendetails entsprechend dem Datenträgernamen wie folgt anzeigen: Docker-Volumenprüfung Das Ausführungsergebnis ist wie folgt: Löschen eines Datenvolumens Sie können den Befehl Beim Löschen im Stapel wurden nicht alle Datenvolumes gelöscht, sondern eines blieb übrig. Dies liegt daran, dass das Datenvolume noch verwendet wird. Stoppen und entfernen Sie die zugehörigen Container und löschen Sie das Datenvolume dann erneut, um es erfolgreich zu löschen, wie in der Abbildung dargestellt: Datenvolumencontainer Ein Datenvolumencontainer ist ein Container, der speziell zum Mounten von Datenvolumen verwendet wird. Dieser Container wird hauptsächlich von anderen Containern referenziert und verwendet. Der sogenannte Datenvolumencontainer ist eigentlich ein gewöhnlicher Container, wie unten gezeigt:
Erstellen Sie mit der folgenden Methode einen Datenvolumencontainer: docker run -itd -v /usr/share/nginx/html/ --name meinedaten ubuntu Die Auswirkung der Befehlsausführung ist wie folgt:
Verwenden Sie den folgenden Befehl, um auf den Datenvolumencontainer zu verweisen: docker run -itd --volumes-from mydata -p 80:80 --name nginx1 nginx docker run -itd --volumes-from mydata -p 81:80 --name nginx2 nginx An diesem Punkt mounten nginx1 und nginx2 beide dasselbe Datenvolumen in das Verzeichnis Verwenden Sie an diesem Punkt den Befehl Zusammenfassen In diesem Artikel werden hauptsächlich die Containeroperationen in Datenvolumina vorgestellt. Insgesamt ist es sehr einfach. Freunde, habt ihr es gelernt? Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung des Befehlsmodus in der Javascript-Praxis
>>: So beheben Sie den MySQL-FEHLER 1045 (28000) - Zugriff wegen Benutzer verweigert
Im Linux-System können Umgebungsvariablen entspre...
In HTML wird das <img>-Tag verwendet, um ei...
Inhaltsverzeichnis 1. Verpackungsbefehl hinzufüge...
1. CSS-Boxmodell Die Box beinhaltet: Rand, Rahmen...
Inhaltsverzeichnis 1. Einleitung 2. Verstehen Sie...
Wenn wir auf einen Fehler stoßen, denken wir oft ...
Frage: Der häufig verwendete Befehl "ll"...
Nach dem Docker-Lauf ist der Status immer „Beende...
Voraussetzung: Das Webentwickler-Plugin wurde inst...
A: Normalerweise im Client gespeichert. jwt oder ...
Inhaltsverzeichnis Frage Hintergrund Idee & U...
1. Lösung 1.1 Beschreibung des Schnittstellenkont...
Vorwort In der Java-Programmierung werden die mei...
Einloggen Docker-Anmeldung Schließen Sie die Regi...
Lassen Sie uns über einige Probleme sprechen, die ...