‫Lassen
‫Sie uns in diesem Vortrag eine kurze Diskussion darüber führen, was tatsächlich im Hintergrund passiert, wenn wir den
‫Befehl docker container run ausführen.
‫Es gibt manchmal ein Missverständnis, dass Docker wirklich nur Container ausführt, und das ist
‫seine Hauptaufgabe.
‫Im Hintergrund passiert jedoch so viel, dass zusätzlich zu den Containern, die Befehle ausführen, noch
‫weitere Aktionen ausgeführt werden.
‫Wenn wir docker container run eingeben, wird im Hintergrund nach dem Bild gesucht, das wir am
‫Ende dieses Befehls angegeben haben.
‫Sie erinnern sich, als wir ganz am Ende Nginx tippten, war das der Name des Bildes, das wir als
‫neuen Container ausführen wollten.
‫Das wird also lokal im Bild-Cache gesucht. Wenn es dort nicht
‫gefunden wird, springt es zu Docker Hub, dem Standard-Remote-Image-Repository.
‫Standardmäßig wird es dort nachgeschlagen, heruntergeladen und im Bild-Cache gespeichert.
‫Also, wenn wir keine Version angegeben haben - und wir haben es nicht getan, wir haben nur nginx
‫eingegeben - Sie können tatsächlich eine Version von nginx colon eingeben - und wir werden im nächsten Abschnitt darauf eingehen - aber ohne Wenn
‫Sie eine Version angeben, wird nur die neueste ausgewählt.
‫Sobald das Image fertig ist, wird ein neuer Container basierend auf diesem Image gestartet.
‫Es wird keine Kopie des Bildes erstellt.
‫Tatsächlich wird nur eine neue Ebene von Änderungen gestartet, genau dort, wo dieses Bild aufgehört hat,
‫und das Netzwerk wird angepasst.
‫Es wird ihm eine bestimmte virtuelle IP-Adresse geben, die sich in einem virtuellen Docker-Netzwerk befindet. Tatsächlich wird der von uns
‫angegebene Port geöffnet. Wenn wir den Befehl Publish (Veröffentlichen) nicht
‫angegeben haben, werden durch den Befehl --publish überhaupt keine Ports geöffnet.
‫Da wir das 80:80 gemacht haben, heißt das, den Port 80 auf dem Host zu nehmen und den
‫gesamten Datenverkehr an den Port 80 im Container weiterzuleiten. Dann wird dieser Container schließlich tatsächlich einen Befehl verwenden,
‫der in der Docker-Datei angegeben ist, in der auch der nächste Abschnitt behandelt wird.
‫Sie können einen Großteil dieser Befehle über die Befehlszeile ändern.
‫Dies sind alles Standardeinstellungen.
‫Wir können tatsächlich die Version unseres Bildes angeben.
‫Wir können verschiedene Ports oder den Standardbefehl angeben, der ausgeführt wird, wenn dieser Container gestartet wird.
‫Da wir jedoch einen sehr einfachen Befehl hatten, wurden einfach viele Standardeinstellungen verwendet, die aus der Box heraus kamen.
‫Wie Sie sehen, spielt sich auf jeden Fall viel im Hintergrund ab.
‫Und später werden wir in separaten Abschnitten auf diese eingehen.