2016-04-15 10 views
2

Ich führe einen Andock-Container mit einem Volume/var/my_folder aus. Die Daten dort sind persistent: Wenn ich den Container schließe, ist er immer noch da. Aber auch wollen die Daten auf meinem Host verfügbar haben, weil ich Code mit einer IDE arbeiten möchte, die nicht in meinem Container installiert ist.Gemeinsame Nutzung von Dateien zwischen Container und Host

Wie kann ich einen Ordner/var/my_folder auf meinem Hostcomputer haben, der auch in meinem Container verfügbar ist?

Ich arbeite an Linux Mint.

Ich schätze Ihre Hilfe.

Danke. :)

Antwort

2

-Link: Manage data in containers

Der grundlegende Fahrbefehl Sie wollen, ist ...

docker run -dt --name containerName -v /path/on/host:/path/in/container 

Das Problem ist, dass die Lautstärke Montage wird, (für Ihre Zwecke), überschreiben die Lautstärke in der Container

Der beste Weg, dies zu überwinden, ist die Dateien (innerhalb des Containers) zu erstellen, die Sie nach dem Mounten freigeben möchten.

Der ENTRYPOINT-Befehl wird beim Andocken ausgeführt. Wenn Ihre Dateien als Teil Ihres Einstiegsskripts UND nicht als Teil Ihres Builds generiert werden, sind sie daher nach dem Mounten auf dem Hostcomputer verfügbar.

Die Lösung besteht also darin, die Befehle auszuführen, die die Dateien im ENTRYPOINT-Skript erstellen.

Wenn dies fehlschlägt, kopieren Sie die Dateien während des Buildvorgangs in ein anderes Verzeichnis und kopieren Sie sie dann wieder in Ihr ENTRYPOINT-Skript.

+0

Danke für Ihre Antwort! Aber wenn mein Volume ein Git-Repository enthält, muss ich nicht mit diesem Problem umgehen, habe ich recht? – hideous

+0

Nachtrag: Während der Ausführung Ihres Befehls bekomme ich folgende Meldung: docker: "run" benötigt mindestens 1 Argument. Siehe 'docker run --help'. – hideous

+0

Entschuldigung Ich denke, Name muss das letzte Argument sein – danday74

Verwandte Themen