Ein Anfängerleitfaden zu einem mehrstufigen Docker -Build

Ein Anfängerleitfaden zu einem mehrstufigen Docker -Build
Docker Multi-Stufe Build ist der Prozess der Angabe einer Reihe von Builds in einer Dockerfile. Mit anderen Worten, die Dockerfile enthält mehrere “AUS”Aussagen in einer einzelnen Datei, und die neue aus der Anweisung verwendet unterschiedliche oder frühere Basisanweisungen. Mit dem mehrstufigen Build können Entwickler den Entwicklungsprozess in mehrstärker. Darüber hinaus wird die Basisbefehl.

Diese Beschreibung bietet einen Leitfaden für einen mehrstufigen Docker-Build.

Ein Anfängerleitfaden zu einem mehrstufigen Docker -Build

Um ein Docker -Bild über einfache Dockerfile und mehrstufige Dockerfile -Builds zu erstellen, sehen Sie sich die aufgelisteten Methoden an:

  • So erstellen Sie ein einfaches Docker -Bild?
  • So erstellen Sie ein Docker -Image aus mehrstufiger Dockerfile?

So erstellen Sie ein einfaches Docker -Bild?

Um ein einfaches Docker -Bild mit einer einfachen Dockerfile zu erstellen, gehen Sie die angegebenen Anweisungen durch.

Schritt 1: Offenes Terminal
Von den Fenstern “Start-upMenü, öffnen Sie das Git -Terminal:

Schritt 2: Neues Verzeichnis erstellen
Erstellen Sie als nächstes ein neues Projektverzeichnis mit dem angegebenen Befehl:

$ mkdir mehrstufig

Öffnen Sie danach das Projektverzeichnis mit Hilfe des “CD" Befehl:

$ CD Multistage

Schritt 3: Programmdatei erstellen
Erstellen und öffnen Sie eine neue Programmdatei, um die “zu implementieren“Golang" Programm. Zum Beispiel haben wir eine geschaffen “hauptsächlich.gehen" Datei:

$ nano main.gehen

Fügen Sie den bereitgestellten Code in die “einhauptsächlich.gehen" Datei. Dieses Programm druckt die einfache Ausgabe “Hallo! Willkommen bei LinuxHint Tutorial”Auf dem örtlichen Gastgeber:

importieren (
"fmt"
"Protokoll"
"net/http"
)
Func Handler (W HTTP.Antwortschreiber, r *http.Anfrage)
fmt.Fprintf (w, "Hallo! Willkommen bei LinuxHint Tutorial ")

func main ()
http.Handlefunc ("/", Handler)
Protokoll.Tödlich (http.Hörenserve ("0.0.0.0: 8080 ", nil)))

Drücken Sie "Strg+o"Um die Änderungen zu speichern und"Strg+x" beenden.

Schritt 4: Dockerfile erstellen
Erstellen und öffnen Sie eine neue Dockerfile im Nano -Texteditor mit der “Nano Dockerfile" Befehl:

$ nano dockerfile

Fügen Sie den folgenden Code in die “einDockerfileDas wird den Container zur Bereitstellung des Projekts anweisen:

Von golang: 1.8
WorkDir/Go/SRC/App
Hauptkopie.gehen .
Run Go Build -o -Webserver .
CMD ["./Webserver "]

Drücken Sie "Strg+o"Um die Datei zu speichern und"Strg+x”Um den Herausgeber zu verlassen:

Schritt 5: Docker -Bild erstellen
Erstellen Sie mit Hilfe von Dockerfile ein neues Docker -Bild über die “Docker Build" Befehl. Der "-TDas Tag wird verwendet, um das Bild Tag/Name anzugeben:

$ Docker Build -t New-Web-Image .

Schritt 6: Docker -Bild ausführen
Verwenden Sie nach dem Erstellen des Docker-Bildes den folgenden Befehl, um das Docker-Bild auszuführen. Der "-PDie Option wird verwendet, um die Portnummer anzugeben, in der der Docker -Container das Programm ausführt:

$ Docker Run -P 8080: 8080 New-Web-Image

Danach navigieren Sie zu “http: // localhost: 8080”Um zu überprüfen, ob die Anwendung ausgeführt wird oder nicht:

Aus der obigen Ausgabe können Sie feststellen, dass wir die Anwendung auf Localhost erfolgreich bereitgestellt haben:

Schritt 7: Docker -Bilder überprüfen
Schließlich führen Sie das aus “ausDockerbilder Befehl, um die zusätzlichen Informationen zum neu erstellten Docker -Bild zu überprüfen:

$ Docker Bilder New-Web-Image

Es kann beobachtet werden, dass die Größe des Docker -Bildes zu groß ist, um das kleine Projekt auszuführen. In einem solchen Szenario kann der mehrstufige Build verwendet werden, um die Docker-Bildgröße zu verringern:

So erstellen Sie ein Docker -Image aus mehrstufiger Dockerfile?

Um eine mehrstufige Dockerfile zu erstellen, um die Entwicklungsprozesse in Phasen zu zerlegen und die Bildgröße zu verringern, sehen Sie sich die bereitgestellten Schritte an.

Schritt 1: Open Dockerfile
Öffnen Sie zunächst die Dockerfile in der “Nano -Texteditor”Durch den erwähnten Befehl:

$ nano dockerfile

Schritt 2: Erstellen Sie mehrstufige Dockerfile
Fügen Sie den folgenden Code in Dockerfile ein. Es ist zu bemerken, dass die Docker -Datei mehr als eine enthält “AUS”Aussage, was bedeutet, dass wir eine mehrstufige Dockerfile erstellen:

Von golang: 1.8 als Basis
WorkDir/Go/SRC/App
Hauptkopie.gehen .
Run Go Build -o -Webserver .
Von Alpine
WorkDir /App
Kopieren - -from = base/go/src/App/App/
CMD ["./Webserver "]

Drücken Sie "Strg+o"Um Änderungen zu sparen und"Strg+x”Um den Herausgeber zu verlassen.

Schritt 3: Docker -Bild erstellen
Erstellen Sie nun das neue Docker -Bild mit Hilfe eines mehrstufigen Builds. Führen Sie zu diesem Zweck den angegebenen Befehl aus:

$ Docker Build -t New-Web-Image .

Überprüfen Sie erneut die zusätzlichen Informationen zum Docker -Bild über die “Dockerbilder" Befehl:

$ Docker Bilder New-Web-Image

Die Ausgabe zeigt, dass wir eine Docker -Datei erfolgreich erstellt haben und die Größe der Docker -Datei nur auf nur reduziert wird12.9mb”:

Schritt 4: Docker -Bild ausführen
Führen Sie zum Schluss das Docker -Bild aus, um den Container auszuführen, um zu überprüfen, ob das Docker -Bild ordnungsgemäß funktioniert oder nicht:

$ Docker Run -P 8080: 8080 New-Web-Image

Öffnen Sie den lokalen Host -Server, indem Sie zum “zum“ der “navigieren“http: // localhost: 8080”Auf dem Browser:

Die Ausgabe zeigt, dass wir das Programm erfolgreich über einen mehrstufigen Build eingesetzt haben.

Abschluss

Der docker mehrstufige Build gibt die Reihe von Builds in Stufen fest. Um eine mehrstufige Dockerfile zu erstellen, geben Sie mehr als eine „Aus“ -Anweisung an und beziehen Sie sich auf die ersteAUS”Aussage als Basisbau. Erstellen Sie danach ein neues Docker -Bild mit der “Docker Build -t ." Befehl. Die Post hat einen vollständigen Leitfaden für einen mehrstufigen Docker -Build erstellt.