Im Gegensatz zum Volume werden vom Hostbenutzer verwaltete Dateien und Verzeichnisse in einem Container bereitgestellt. Wieder kann dieselbe Datei oder dasselbe Verzeichnis in mehreren Containern bereitgestellt werden. Da es sich um einen vom Benutzer verwalteten Bereich handelt, bereiten Sie die Mount-Quelldatei oder das Mount-Quellverzeichnis im Voraus vor, geben Sie den Pfad an und hängen Sie ihn in den Container ein. Indem Sie den Quellcode und die Einstellungsdatei des Projekts auf dem Host platzieren und bereitstellen, können Sie den Vorgang überprüfen, während Sie die Datei auf der Hostseite bearbeiten.
-# "$(pwd)"Quellverzeichnis im aktuellen Verzeichnis(nicht existieren)Montiert.
$ docker run -itd --name bind-test1 -v “$(pwd)”/source:/app nginx
$ ls
source
Wenn Sie -v verwenden, wird automatisch ein Verzeichnis auf dem Host erstellt, wenn das Verzeichnis nicht vorhanden ist.
-# “$(pwd)”/Sie mounten ein Verzeichnis, das in source2 nicht vorhanden ist.
$ docker run -itd —-name bind-test2 —mount type=bind,source=“$(pwd)”/source2,target=/app nginx
Geben Sie Typ als Bindung an. Wird ohne ein Verzeichnis namens source2 im aktuellen Verzeichnis ausgeführt. In diesem Fall tritt ein Fehler auf. Im Fall von --mount tritt ein Fehler auf, wenn das Quellverzeichnis nicht vorhanden ist. Dadurch wird verhindert, dass Sie versehentlich ein leeres Verzeichnis bereitstellen. Der Status der Bindungsmontage kann durch Anzeigen der Detailinformationen des Containers sowie des Volumens bestätigt werden.
-# bind-Detaillierte Bestätigung von Test1
$ docker inspect bind-test1
"Mounts": [
{
"Type": "bind",
"Source": "/home/docker/source",
"Destination": "/app",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
}
],
Sie können jedes nach Typ, Quelle und Ziel überprüfen. Es ist standardmäßig lesbar und beschreibbar gemountet. Beachten Sie, dass bind mount das Mount-Zielverzeichnis und die Dateien im bind-Verzeichnis verbirgt. Wenn Sie wichtige Dateien und Verzeichnisse mit bind abdecken, funktioniert der Container möglicherweise nicht ordnungsgemäß. Sie können es auch schreibgeschützt mit Bind Mount mounten.
Hängen Sie den Hostspeicherbereich als Dateisystem in den Container ein. Da die Daten im Speicher gespeichert sind, gehen die Daten verloren, wenn der Docker-Host heruntergefahren oder der Container gestoppt wird. Der Zweck besteht darin, es als Speicherort für Daten zu verwenden, die vorübergehend gespeichert werden, anstatt permanente Daten zu speichern, und Daten zu speichern, die problemlos gelöscht werden können. Bargeld, Einmalpasswort usw. Sie können optional die Mount-Größe begrenzen.
-#Beispiel
$ docker run -itd --name tmptest --mount type=tmpfs,destination=/app nginx
Geben Sie bei Verwendung von tmpfs tmpfs als Typ an. Standardmäßig ist die Mount-Größe unbegrenzt. Wenn Ihnen der Speicher ausgeht, wird Swap verwendet. Die Größe der Halterung kann durch Angabe von Optionen begrenzt werden.
-#Beispiel
$ docker run -itd --name tmptest2 --mount type=tmpfs,destination=/app,tmpfs-size=500000000,tmpfs-mode=700 nginx
Ich habe die Mount-Größe auf 500 MB und den Dateimodus auf 700 eingestellt.
Recommended Posts