Heim > Betrieb und Instandhaltung > Docker > Was ist der Unterschied zwischen -v und -mount in Docker?

Was ist der Unterschied zwischen -v und -mount in Docker?

WBOY
Freigeben: 2021-12-29 11:50:05
Original
13127 Leute haben es durchsucht

Der Unterschied zwischen „-v“ und „-mount“ in Docker besteht darin: Wenn Sie „-v“ zum Mounten des Hostverzeichnisses verwenden und keine angegebene Datei auf dem Host vorhanden ist, wird kein Fehler gemeldet und die angegebene Datei wird automatisch erstellt; wenn bei Verwendung von „-mount“ keine solche Datei auf dem Host-Computer vorhanden ist, wird ein Fehler gemeldet, dass die angegebene Datei nicht gefunden werden kann, und die angegebene Datei wird nicht automatisch erstellt.

Was ist der Unterschied zwischen -v und -mount in Docker?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Docker-1.13.1-Version, Dell G3-Computer.

Was ist der Unterschied zwischen -v und -mount im Docker?

--volume(-v)

Der Parameter --volume (oder kurz -v) kann nur einen Bind-Mount erstellen. Beispiel: docker

docker run --name $CONTAINER_NAME -it \
-v $PWD/$CONTAINER_NAME/app:/app:rw \
-v $PWD/$CONTAINER_NAME/data:/data:ro \
avocado-cloud:latest /bin/bash
Nach dem Login kopieren

Kommentar: Sicherheit

Befehlsformat: [[HOST-DIR:]CONTAINER-DIR[:OPTIONS]]]

Wenn HOST-DIR angegeben ist, muss es ein absoluter Pfad sein nicht vorhanden, wird es automatisch ausgeführt. Die rw in der erstellten

-Instanz ist schreibgeschützt, ro ist schreibgeschützt

--mount

Parameter--mount wird standardmäßig zum Mounten des Volumes verwendet, kann aber auch verwendet werden um Bind Mount und tmpfs zu erstellen. Wenn die Typoption nicht angegeben ist, ist das Mounten von Volumes eine flexiblere Datenverwaltungsmethode. Volumes können über den Docker-Volume-Befehlssatz verwaltet werden. Beispiel: bash

docker run --name $CONTAINER_NAME -it \
--mount type=bind,source=$PWD/$CONTAINER_NAME/app,destination=/app \
--mount source=${CONTAINER_NAME}-data,destination=/data,readonly \
avocado-cloud:latest /bin/bash
Nach dem Login kopieren

Kommentar: app

Befehlsformat für das Mount-Volume: [Typ=Volume,]Quelle=mein-Volume,Ziel=/Pfad/in/Container[,...]

Bind-Mount-Befehlsformat erstellen: type=bind,source=/path/on/host,destination=/path/in/container[,...]

Wenn Sie einen Bind-Mount erstellen und die Quelle angeben, muss es sich um einen absoluten Pfad und den Pfad handeln muss bereits vorhanden sein

Im Beispiel bedeutet schreibgeschützt

Unterschied:

Wenn die Datei nicht auf dem Host vorhanden ist, wird sie automatisch erstellt

Wenn jedoch --mount vorhanden ist Wenn keine solche Datei auf dem Host vorhanden ist, wird ein Fehler gemeldet und die Datei kann nicht gefunden werden. Die Erstellung ist fehlgeschlagen

Empfohlenes Lernen: „Docker-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen -v und -mount in Docker?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage