Den Volume-Befehl in Docker verstehen
In Docker können wir separate Images, Container und Volumes erstellen. Volumes können gemountet werden, wenn wir einen Container starten.
Wenn wir es manuell in Docker tun können, können wir es durch einen Build-Prozess automatisieren, der eine Datei namens Dockerfile verwendet.
In diesem Artikel wird das Erstellen, Erstellen und Bereitstellen von Volumes über die Dockerfile in Docker erläutert.
Verstehen der VOLUME
-Anweisung in Docker
Bei der Arbeit mit einem Dockerfile verwenden wir mehrere Anweisungen, um den Build eines einzelnen oder mehrerer Container zu automatisieren. Ein Beispiel für diese Befehle ist der VOLUME
-Befehl.
In einem Dockerfile sollte es ungefähr so aussehen:
FROM ubuntu
RUN mkdir /samplevol
VOLUME /samplevol
Es gibt jedoch einige Verwirrung, wenn wir versuchen, den Wert für die Anweisung VOLUME
in unsere Dockerfile einzugeben. Wenn wir die Anweisung VOLUME
verwenden, müssen wir verstehen, dass wir hier nicht den Ort unseres Docker-Volumes außerhalb des Containers angeben.
Stattdessen teilen wir dem Ziel mit der Anweisung VOLUME
mit, wo wir in einem Container unser externes Docker-Volume mounten, wenn der Container bereits läuft.
Wenn wir uns erinnern können, können wir beim Ausführen eines Containers den Parameter --volume
oder -v
verwenden, um ein bestimmtes Volume zu mounten. Es gibt jedoch andere Zwecke für diesen Parameter.
Beispielsweise können wir mit dem Parameter --volume
angeben, an welchem Ort wir das Docker-Volume mounten sollen.
Beispielbefehl:
docker run --volume=/volumesd:/samplevol sushi_bake
Im obigen Befehl ist das Verzeichnis /volumesd
der Speicherort des nicht gemounteten Docker-Volumes. Im Verzeichnis /samplevol
werden wir das Docker-Volume innerhalb des erstellten und laufenden Containers mounten.
Außerdem ist das Verzeichnis /samplevol
der richtige Wert für die VOLUME
-Anweisung in unserem Dockerfile.
Alternativ können wir die Verwirrung vermeiden, indem wir keine VOLUME
-Anweisung in unser Dockerfile einfügen. Wenn wir in unserer VOLUME
-Anweisung keinen Mount-Punkt hinzugefügt haben, weist Docker einen Standardspeicherort für das zu mountende Volume zu.
Der Speicherort befindet sich normalerweise unter /var/lib/docker/volumes
.
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn