Docker: Was enthält das Docker-Image? Muss ich die gespeicherten Images mit dem Quellcode weitergeben, um sie zwischen Maschinen zu übertragen?

Docker: Was enthält das Docker-Image? Muss ich die gespeicherten Images mit dem Quellcode weitergeben, um sie zwischen Maschinen zu übertragen?

Ich habe die auf einem Computer erstellten Images kopiert und diese Images auf einen anderen Computer kopiert. (Docker-Images werden mit dem Befehl docker save -o [images.tar] gespeichert.)

Dann verwende ich den Befehl „Docker Loader“ auf der anderen Maschine. Muss ich, um diese Images auszuführen, die Quellcodes, das Dockerfile und die Datei „docker-compose.yml“ zusammen mit den Images übergeben?

Antwort1

Das Dockerfile enthält die Anweisungen zum Erstellen eines Images. Sobald das Image erstellt ist, können andere es ohne das Dockerfile ausführen.

Das Image selbst sollte alle Komponenten zum Ausführen Ihrer Anwendung enthalten, z. B. Binärdateien, Bibliotheken und alle Skripts (dies ist Ihr Quellcode, wenn Sie eine interpretierte Sprache wie JavaScript haben).

Die Datei docker-compose.yml ist eine Konfiguration zum Ausführen Ihres Images. Dazu gehören Einstellungen wie wo Ports veröffentlicht werden und wie Volumes gemountet werden, die nicht in das Image selbst gehören.


Wenn Sie Ihr Image kopiert haben, benötigen Sie zum Ausführen nur die Datei docker-compose.yml.


Beachten Sie, dass ich das Übertragen von Bildern mit Speichern/Laden nicht empfehle. Sie werden feststellen, dass die gleichen Ebenen, die bereits ausgeliefert wurden, erneut übertragen werden. Stattdessen kann ein Registrierungsserver verwendet werden, sogar in einer nicht verbundenen Umgebung, indemAusführen einer eigenen Registrierung. Dadurch bleibt der Überblick darüber erhalten, welche Ebenen neu sind, und die Übertragung wird beschleunigt. Zudem wird der von Bildern belegte Speicherplatz reduziert.

verwandte Informationen