So erstellen Sie eine NodeJS -App auf Docker

So erstellen Sie eine NodeJS -App auf Docker
Docker ist heutzutage zu einem heißen Gesprächsthema geworden, insbesondere unter Entwicklern. Also, was ist Docker?? Docker ist eine OpenSource -Plattform, die auf dem Linux -Kernel fährt und es Entwicklern ermöglicht, ihre Anwendungen in zu erstellen und bereitzustellen Behälter. Container bieten eine isolierte Umgebung für das Ausführen von Anwendungen und werden mit eigenen Bibliotheken, Abhängigkeiten und Konfigurationsdateien gebündelt, die für die automatische Bereitstellung von Anwendungen unerlässlich sind.

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:

  1. Docker
  2. NodeJS & NPM

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:

  1. JS
  2. html

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



Hallo! Willkommen in meiner NodeJS -Anwendung



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.