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:
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:
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.