Wie installiere ich den MERN Stack für JS basierte Anwendungen auf Ubuntu 20.04

Der MERN Stack setzt sich aus vier Komponenten zusammen: MongoDB, Express, React und Node. Er bietet ein Bündel von JavaScript-Technologien, die für die Erstellung von dynamischen JS-Websites verwendet werden.

MongoDB ist ein quelloffenes und weit verbreitetes NoSQL-Datenbanksystem, das für die Entwicklung robuster Webanwendungen verwendet wird. Express.js ist ein Node.js-Webapplikations-Framework, das für die Entwicklung hybrider webbasierter Anwendungen verwendet wird. React.js ist ein Open-Source-JavaScript-Framework, das verwendet wird, um ein Front-End-Interface für mobile Anwendungen zu erstellen. Node.js ist eine JavaScript-Umgebung, die es Entwicklern erlaubt, Codes auf dem Server auszuführen.

In dieser Anleitung zeigen wir dir, wie du den MERN Stack auf Ubuntu 20.04 installieren kannst.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 20.04 läuft.
  • Ein Root-Passwort ist auf dem Server konfiguriert.

Erste Schritte

Als erstes aktualisierst du die Systempakete auf die aktuelle Version, indem du den folgenden Befehl ausführst:

apt-get update -y

Sobald alle Pakete aktualisiert sind, kannst du mit dem nächsten Schritt fortfahren.

MongoDB Server installieren

Standardmäßig ist die neueste Version von MongoDB nicht im Standard-Repository von Ubuntu 20.04 enthalten. Daher musst du das MongoDB Repository zu deinem System hinzufügen.

Als erstes installierst du alle benötigten Abhängigkeiten mit dem folgenden Befehl:

apt-get install gnupg2 wget curl unzip git -y

Nachdem du alle Abhängigkeiten installiert hast, füge den MongoDB GPG-Schlüssel mit dem folgenden Befehl hinzu:

wget -qO- https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -

Als nächstes fügst du das MongoDB Repository mit dem folgenden Befehl hinzu:

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list

Als nächstes aktualisiere das Repository und installiere den MongoDB Server mit dem folgenden Befehl:

apt-get update -y
apt-get install mongodb-org -y

Sobald MongoDB installiert ist, starte den MongoDB-Dienst und aktiviere ihn, damit er beim Neustart des Systems startet:

systemctl start mongod
systemctl enable mongod

Als nächstes überprüfe den Status des MongoDB-Dienstes mit dem folgenden Befehl:

systemctl status mongod

Du solltest die folgende Ausgabe sehen:

? mongod.service - MongoDB Database Server
     Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-07-23 12:21:17 UTC; 5s ago
       Docs: https://docs.mongodb.org/manual
   Main PID: 8774 (mongod)
     Memory: 58.8M
     CGroup: /system.slice/mongod.service
             ??8774 /usr/bin/mongod --config /etc/mongod.conf

Jul 23 12:21:17 ubuntu systemd[1]: Started MongoDB Database Server.

Überprüfe als nächstes die MongoDB-Installation mit dem folgenden Befehl:

mongo --eval 'db.runCommand({ connectionStatus: 1 })'

Du solltest die folgende Ausgabe erhalten:

MongoDB shell version v4.4.7
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("59c89093-9e9d-413b-aafa-ae0a4ddda087") }
MongoDB server version: 4.4.7
{
	"authInfo" : {
		"authenticatedUsers" : [ ],
		"authenticatedUserRoles" : [ ]
	},
	"ok" : 1
}

Create MongoDB Admin User

Verbinde dich zunächst mit der MongoDB-Instanz mit dem folgenden Befehl:

mongo

Sobald du verbunden bist, ändere die Datenbank auf admin mit dem folgenden Befehl:

> use admin

Als nächstes erstellst du einen Admin-Benutzer und legst ein Passwort mit dem folgenden Befehl fest:

> db.createUser({user: "admin" , pwd: passwordPrompt() , roles: [{ role: "userAdminAnyDatabase" , db: "admin"}]})
Enter password:

Du solltest die folgende Ausgabe erhalten:

Successfully added user: {
	"user" : "admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	]
}

Beende die MongoDB-Shell mit dem folgenden Befehl:

> quit()

Node.js installieren

Standardmäßig ist die neueste Version von Node.js nicht im Ubuntu Standard-Repository enthalten. Daher musst du das Node Source Repository zu deinem System hinzufügen.

Um das Node Source Repository hinzuzufügen, führe den folgenden Befehl aus:

curl -sL https://deb.nodesource.com/setup_14.x | bash -

Sobald das Repository hinzugefügt ist, installiere Node.js mit dem folgenden Befehl:

apt-get install nodejs -y

Nach der Installation überprüfe die Node.js Version mit dem folgenden Befehl:

node --version

Du solltest die folgende Ausgabe sehen:

v14.17.2

Du kannst auch die NPM-Version mit dem folgenden Befehl überprüfen:

npm --version

Du solltest die folgende Ausgabe sehen:

6.14.13

React.js installieren

Zuerst musst du das Tool create-react-app installieren, um eine React.js Anwendung zu erstellen.

Du kannst es mit dem folgenden Befehl installieren:

npm install -g create-react-app

Nach der Installation erstelle eine React.js Anwendung mit dem folgenden Befehl:

create-react-app myapp

Du solltest die folgende Ausgabe sehen:

Success! Created myapp at /root/myapp
Inside that directory, you can run several commands:

  npm start
    Starts the development server.

  npm run build
    Bundles the app into static files for production.

  npm test
    Starts the test runner.

  npm run eject
    Removes this tool and copies build dependencies, configuration files
    and scripts into the app directory. If you do this, you can’t go back!

We suggest that you begin by typing:

  cd myapp
  npm start

Happy hacking!

Wechsle als nächstes in das Verzeichnis myapp und starte die Anwendung mit dem folgenden Befehl:

cd myapp
npm start 0.0.0.0

Du solltest die folgende Ausgabe sehen:

Compiled successfully!

You can now view myapp in the browser.

  http://localhost:3000

Note that the development build is not optimized.
To create a production build, use npm run build.

Du kannst nun die React.js-App über die URL http://your-server-ip:3000 aufrufen. Auf der folgenden Seite solltest du dein React.js Dashboard sehen:

NodeJS

Drücke nun STRG+C in deinem Terminal, um die Anwendung zu schließen.

Installiere Express.js

Installiere zunächst den Express-Generator mit dem folgenden Befehl:

npm install -g express-generator

Nach der Installation erstelle ein neues Projekt mit dem folgenden Befehl:

express myproject

Du solltest die folgende Ausgabe erhalten:

  warning: the default view engine will not be jade in future releases
  warning: use `--view=jade' or `--help' for additional options


   create : myproject/
   create : myproject/public/
   create : myproject/public/javascripts/
   create : myproject/public/images/
   create : myproject/public/stylesheets/
   create : myproject/public/stylesheets/style.css
   create : myproject/routes/
   create : myproject/routes/index.js
   create : myproject/routes/users.js
   create : myproject/views/
   create : myproject/views/error.jade
   create : myproject/views/index.jade
   create : myproject/views/layout.jade
   create : myproject/app.js
   create : myproject/package.json
   create : myproject/bin/
   create : myproject/bin/www

   change directory:
     $ cd myproject

   install dependencies:
     $ npm install

   run the app:
     $ DEBUG=myproject:* npm start

Wechsle nun in das Verzeichnis deines Projekts und installiere alle NPM-Abhängigkeiten mit folgendem Befehl:

cd myproject
npm install

Starte nun den Express Webserver mit dem folgenden Befehl:

npm start 0.0.0.0

Öffne nun deinen Webbrowser und rufe die Express-Anwendung über die URL http://your-server-ip:3000 auf. Du solltest die folgende Seite sehen:

ExpressJS

Fazit

Glückwunsch! Du hast den MERN Stack erfolgreich auf dem Ubuntu 20.04 Server installiert. Du kannst nun mit der Entwicklung von MERN-Anwendungen beginnen. Fühle dich frei, mich zu fragen, wenn du irgendwelche Fragen hast.

Das könnte dich auch interessieren …