2017-02-16 1 views
0

Was macht docker, wenn Sie ein Volume in Ihrem docker "run" -Befehl, binden, der bereits ein verwaltetes Volume ist, das in der Docker-Build-Datei/image definiert ist?docker bind-mounting eines verwalteten Volumes

Beispiel:

  • dockerfile definiert/myvolume als verwaltete Volumen
  • dann: Docker run -v/< my_host_dir>:/myvolume .../< image>

Was ich Beachten Sie, dass das verwaltete Volume nicht mehr erstellt wird. Stattdessen kommt das Bind-Mount durch und mountet das Host-Verzeichnis in den Container.

Was passiert hinter den Kulissen? Ist das irgendwo dokumentiert und damit kann man rechnen?

br volker

+0

Was genau meinen Sie mit "Was ich sehe ist, dass das verwaltete Volume nicht mehr erstellt wird". '/ myvolume' sollte innerhalb des Containerwetters existieren oder nicht, du hast es bindgebunden. – Martin

Antwort

1

Die VOLUME-Anweisung in einer Dockerfile markiert nur das Verzeichnis als von anderswo montiert werden Benutzer des Bildes zu helfen. Wenn Sie beispielsweise ein Datenbank-Image erstellen, möchte der Benutzer dieses Images das Datum normalerweise außerhalb des Containers beibehalten.

Wenn Sie (als der Schöpfer des Bildes/Schreiber des Dockerfile) ein Verzeichnis als VOLUME markiert, den Benutzer des Bildes (derjenige, der docker run oder ähnliches ausführt) eine Idee hat, wo in dem Behälter sollte er Mounten Sie ein Verzeichnis von außen.

+0

Danke Martin, nur zurück: Wenn es dem Benutzer des Bildes egal ist, wo Docker das Volume speichert, verwendet er das Bild einfach so, wie es ist. Er kann es immer mit "docker inspect" herausfinden. Wenn er jedoch die Dateien an einem bestimmten Ort auf dem Host haben möchte, gibt er im Befehl "docker run" einen Bind-Mount an. Das ist so? – vkoster

+0

Nein. Nur eine 'VOLUME'-Anweisung in einer Dockerfile beeinflusst den Host überhaupt nicht. Es ist nur ein Etikett. Wenn der Benutzer beim Start kein '-v'-Flag bereitstellt, wird auf dem Host kein Verzeichnis erstellt. ('-v' mountet ein existierendes Verzeichnis ODER erstellt das Verzeichnis und mountet es dann) – Martin

Verwandte Themen