Lo stack MERN è composto da quattro componenti:MongoDB, Express, React e Node. Fornisce un pacchetto di tecnologie JavaScript utilizzate per la creazione di siti Web JS dinamici.
MongoDB è un sistema di database NoSQL open source e più ampiamente utilizzato utilizzato per lo sviluppo di applicazioni Web robuste. Express.js è un framework di applicazioni Web Node.js utilizzato per lo sviluppo di applicazioni basate sul Web ibride. React.js è un framework JavaScript open source utilizzato per creare un'interfaccia front-end per applicazioni mobili. Node.js è un ambiente JavaScript che consente agli sviluppatori di eseguire codici sul server.
In questa guida, ti mostreremo come installare lo stack MERN su Ubuntu 20.04.
Prerequisiti
- Un server che esegue Ubuntu 20.04.
- Sul server è configurata una password di root.
Per iniziare
Innanzitutto, aggiorna i pacchetti di sistema alla versione aggiornata eseguendo il comando seguente:
apt-get update -y
Una volta aggiornati tutti i pacchetti, puoi procedere al passaggio successivo.
Installa il server MongoDB
Per impostazione predefinita, l'ultima versione di MongoDB non è inclusa nel repository predefinito di Ubuntu 20.04. Quindi dovrai aggiungere il repository MongoDB al tuo sistema.
Innanzitutto, installa tutte le dipendenze richieste utilizzando il seguente comando:
apt-get install gnupg2 wget curl unzip git -y
Dopo aver installato tutte le dipendenze, aggiungi la chiave GPG MongoDB con il seguente comando:
wget -qO- https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -
Quindi, aggiungi il repository MongoDB con il seguente comando:
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
Quindi, aggiorna il repository e installa il server MongoDB utilizzando il seguente comando:
apt-get update -y
apt-get install mongodb-org -y
Una volta installato MongoDB, avvia il servizio MongoDB e abilitalo all'avvio al riavvio del sistema:
systemctl start mongod
systemctl enable mongod
Successivamente, verifica lo stato del servizio MongoDB utilizzando il comando seguente:
systemctl status mongod
Dovresti vedere il seguente output:
? 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.
Successivamente, verifica l'installazione di MongoDB con il seguente comando:
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
Dovresti ottenere il seguente output:
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 }
Crea utente amministratore MongoDB
Innanzitutto, connettiti all'istanza MongoDB con il seguente comando:
mongo
Una volta connesso, cambia il database in admin con il seguente comando:
> use admin
Quindi, crea un utente amministratore e imposta una password con il seguente comando:
> db.createUser({user: "admin" , pwd: passwordPrompt() , roles: [{ role: "userAdminAnyDatabase" , db: "admin"}]})
Enter password:
Dovresti ottenere il seguente output:
Successfully added user: { "user" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] }
Quindi, esci dalla shell di MongoDB con il seguente comando:
> quit()
Installa Node.js
Per impostazione predefinita, l'ultima versione di Node.js non è inclusa nel repository predefinito di Ubuntu. Quindi dovrai aggiungere il repository di origine Node al tuo sistema.
Per aggiungere il repository di origine del nodo, esegui il comando seguente:
curl -sL https://deb.nodesource.com/setup_14.x | bash -
Una volta aggiunto il repository, installa Node.js con il seguente comando:
apt-get install nodejs -y
Dopo l'installazione, verifica la versione di Node.js con il seguente comando:
node --version
Dovresti vedere il seguente output:
v14.17.2
Puoi anche verificare la versione NPM utilizzando il comando seguente:
npm --version
Dovresti vedere il seguente output:
6.14.13
Installa React.js
Innanzitutto, dovrai installare uno strumento create-react-app per creare un'applicazione React.js.
Puoi installarlo con il seguente comando:
npm install -g create-react-app
Dopo l'installazione, crea un'applicazione React.js con il seguente comando:
create-react-app myapp
Dovresti vedere il seguente output:
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!
Quindi, cambia la directory in myapp e avvia l'applicazione con il seguente comando:
cd myapp
npm start 0.0.0.0
Dovresti vedere il seguente output:
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.
Ora puoi accedere all'app React.js utilizzando l'URL http://your-server-ip:3000 . Dovresti vedere la dashboard di React.js nella pagina seguente:
Ora premi CTRL+C nel tuo terminale per chiudere l'applicazione.
Installa Express.js
Innanzitutto, installa l'express-generator con il seguente comando:
npm install -g express-generator
Dopo l'installazione, crea un nuovo progetto con il seguente comando:
express myproject
Dovresti ottenere il seguente output:
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
Ora, cambia la directory nel tuo progetto e installa tutte le dipendenze NPM usando il seguente comando:
cd myproject
npm install
Ora avvia il server web Express usando il seguente comando:
npm start 0.0.0.0
Ora apri il tuo browser web e accedi all'applicazione Express utilizzando l'URL http://your-server-ip:3000 . Dovresti vedere la seguente pagina:
Conclusione
Congratulazioni! hai installato con successo lo stack MERN sul server Ubuntu 20.04. È ora possibile avviare lo sviluppo di applicazioni MERN. Sentiti libero di chiedermi se hai domande.