In diesem Handbuch führen wir Sie durch, wie Sie eine NodeJS -App auf Docker erstellen können. Sie lernen, wie Sie eine Demo -NodeJS -Anwendung auf Ihrem Server erstellen und später zu Docker Hub weitergeben. In diesem Leitfaden verwenden wir Ubuntu 18.04 LTS für unsere Testumgebung.
Warum sollte jemand seine Bewerbungen auf Docker drücken wollen?? Wie wir bereits gesehen haben, verschifft Docker Anwendungen in Containern, die Bibliotheken und Abhängigkeiten bündeln. Dies ist eine vollwertige Umgebung für die Bereitstellung Ihrer Anwendungen. Darüber hinaus stellt der Wahlkreis der Entwicklungsumgebung sicher, dass die Anwendung in vielen Entwicklern und Client -Maschinen auf die gleiche Weise funktioniert.
Voraussetzungen für die Entwicklung von Nodejs Docker
In diesem Leitfaden wird davon ausgegangen, dass Sie über Docker -Kenntnisse verfügen.
Stellen Sie vor dem weiteren Abschluss sicher, dass in Ihrer Testumgebung Folgendes installiert ist:
Lassen Sie uns jetzt die Hände schmutzig machen.
Schritt 1: Erstellen Sie einen Knoten.JS -Anwendung
Beginnen Sie zunächst mit dem Erstellen einer NodeJS -Anwendung. Wir werden ein neues Verzeichnis erstellen und dann wie gezeigt darin navigieren.
$ mkdir mynode-App && CD mynode-App
Verwenden Sie als nächstes NPM, kurz für den NodeJS -Paket -Manager, um das Verzeichnis zu initialisieren.
$ npm init
Der Befehl erstellt eine Datei aufgerufen Paket.JSON . Sie werden aufgefordert, Einzelheiten zur JSON -Datei wie Name, Version, Beschreibung, Schlüsselwörter und Autor zu erwähnen, um nur einige zu erwähnen.
Geben Sie am Endtyp Ja, um die bevorzugten Details der JSON -Datei zu bestätigen.
Fügen Sie als nächstes das Express -Framework hinzu, indem Sie den Befehl ausführen:
$ npm install express -Save
Sie sollten wie unten gezeigt eine Ausgabe erhalten
Schritt 2: Erstellen Sie einen Knoten.JS -Anwendung
In diesem Schritt müssen wir Dateien erstellen, die für die NodeJS -Anwendung benötigt werden. Erstellen wir 2 Beispieldateien wie folgt:
Für die Index.JS Datei, kopieren und fügen Sie den folgenden Inhalt ein:
const express = fordern ('express')
const App = express ()
App.get ('/', (req, res) =>
res.sendFile ('$ __ Dirname/Index.html ')
)
App.Hören Sie (3000, () =>
Konsole.Log ('Port 3000 zuhören!'))
)
Die Datei erstellt eine Route für den Index.HTML -Datei, die Port 3000 anhören wird
Für den Index.HTML -Datei, die folgende Konfiguration einfügen
Wir sind jetzt bereit, die NodeJS -App zu starten.
Schritt 3: Führen Sie die NodeJS -Anwendung aus
Um die Anwendung zu starten, geben Sie einfach den Befehl aus
$ Knotenindex.JS
Aus der Ausgabe können wir feststellen, dass die Anwendung auf Port 3000 zuhört. Öffnen Sie, um dies zu bestätigen, Ihren Browser und durchsuchen Sie die IP Ihres Servers wie gezeigt
http: // ip-address: 3000
Schritt 4: Dockerisieren Sie die NodeJS -Anwendung
Als nächstes werden wir eine Docker -Datei erstellen
$ touch dockerfile
Fügen Sie als Nächstes die folgende Konfiguration ein
Vom Knoten: Kohlenstoff
WorkDir/usr/src/App
Paket kopieren*.JSON ./
Führen Sie die NPM -Installation aus
KOPIEREN…
3000 entdecken
CMD ["Knoten", "Index.JS "]
Lassen Sie uns das zusammenbrechen:
Die erste Zeile zeigt, dass wir die neueste Version des Knotens verwenden möchten, um unser Bild zu erstellen. Knoten.JS verwendet normalerweise chemische Elemente, um seine LTS -Versionen auf dem Knoten zu benennen.
Die zweite Zeile verweist auf die Schaffung der /usr/src/App Verzeichnis, mit dem der Code der Anwendung im Bild gerecht wird.
Die Zeilen 3 und 4 lenken das Kopieren des Pakets.JSON -Datei und die Ausführung der NPM Installation Befehl
KOPIEREN… Dadurch wird im Docker -Bild die NodeJS -Anwendung - die die HTML- und JS -Dateien umfasst, im Docker -Bild verpackt.
3000 entdecken Dies definiert den Port, den die NodeJS -App verwendet
CMD ["Knoten", "Index.JS ”] Dies zeigt den Befehl an, der ausgeführt werden muss, damit die Anwendung starten kann.
Schritt 5. Bauen Sie den Knoten auf.JS -Anwendung
Nach dem Erstellen der Docker -Datei erstellen wir jetzt die NodeJS -App mit dem unten angegebenen Befehl. Seien Sie daran interessiert, einen Raum und eine Zeit am Ende wie gezeigt einzubeziehen. Die Option -t hilft uns, das Bild zu markieren, damit es einfacher ist, es zu finden, wenn wir das ausführen Dockerbilder Befehl.
$ docker Build -t mynode -App .
Führen Sie den Befehl aus, um die Existenz des Bildes zu bestätigen:
$ Docker Bilder
Schritt 6. Ausführen des Docker -Containers
Mit unserem Bild starten wir es nun mit dem Befehl:
# Docker Run -P 8080: 3000 -D -Knoten -App
Der Befehl lenkt die Anwendung auf Port 8080 anstelle von Port 3000. Öffnen Sie, um dies zu bestätigen, Ihren Browser und durchsuchen Sie die URL des Servers wie gezeigt
http: // ip-address: 8080
Schritt 7. Drücken Sie die Bewerbung auf Docker Hub
Dies ist der letzte Schritt, der bereits unsere Bewerbung aufgebaut und sichergestellt hat, dass alles wie erwartet funktioniert.
Stellen Sie vor dem Verfahren sicher, dass Sie bei Docker Hub ein Konto erstellt haben
Erstellen Sie als nächstes das Bild noch einmal mit Ihren Docker -Anmeldeinformationen
# Docker Build -t [Benutzername]/Tag .
Der Benutzername ist Ihr Docker Hub -Login -Benutzername und das Tag ist das Tag Ihrer Anwendung. In meinem Fall wird der Befehl gezeigt sein
# Docker Build -t Jayarthur/MyNode -App .
Melden Sie sich nun bei Docker Hub A ein.
# Docker Login
Geben Sie Ihren Benutzernamen und Ihr Passwort an und klicken Sie auf die Eingabetaste
Das einzige, was jetzt noch übrig ist, ist, das Bild in den Docker -Hub zu drücken. Um dies zu erreichen, führen Sie den Befehl aus:
# Docker Push Jayarthur/MyNode-App
Melden Sie sich schließlich in Ihren Docker -Hub an und bestätigen Sie die Existenz des Bildes der Anwendung.
Und dies bringt uns das Ende dieses Tutorials. Fühlen Sie sich frei, mit Ihrem Feedback zu erreichen. Danke.