Meine Frage bezieht sich auf diese Frage zum Kopieren von Dateien von Containern auf Hosts. Ich habe eine Docker-Datei, die Abhängigkeiten abruft, ein Build-Artefakt aus dem Quellcode kompiliert und eine ausführbare Datei ausführt. Ich möchte auch das Build-Artefakt kopieren (in meinem Fall ist es ein .zipvon sbt dist'../ target /' erstelltes, aber ich denke, diese Frage gilt auch für Gläser, Binärdateien usw.).
docker cparbeitet an Containern, nicht an Bildern; Muss ich einen Container starten, um eine Datei daraus zu erhalten? In einem Skript habe ich versucht, /bin/bashim interaktiven Modus im Hintergrund zu laufen , die Datei zu kopieren und dann den Container zu beenden, aber das scheint kludgey. Gibt es einen besseren Weg?
Andererseits möchte ich vermeiden, dass eine .tarDatei nach dem Ausführen entpackt wirddocker save $IMAGENAME entpacken, um nur eine Datei herauszuholen (aber das scheint derzeit die einfachste, wenn auch langsamste Option zu sein).
Ich würde Docker-Volumes verwenden, z.
docker run -v hostdir:out $IMAGENAME /bin/cp/../blah.zip /out
Ich arbeite jedoch unter boot2dockerOSX und weiß nicht, wie ich direkt in mein Mac-Host-Dateisystem schreiben soll (Lese- / Schreib-Volumes werden in meiner boot2docker-VM bereitgestellt, was bedeutet, dass ich ein Skript zum Extrahieren blah.zipaus einem Image nicht einfach freigeben kann andere. Gedanken?
createBefehl hinzugefügt / entfernt (es ist nicht in 1.01 vorhanden)