Come installare Node.js con NVM e configurare Nginx. NVM sta per Node.js Version Manager, uno strumento più flessibile per installare e gestire più versioni di Node.js e dei pacchetti associati contemporaneamente.
In questa guida imparerai come installare una versione specifica di Node.js usando NVM e configurare Nginx e proteggere l'installazione usando Let's Encrypt. Questa configurazione è testata su Google Compute Engine con sistema operativo Ubuntu 22.04
Installa NVM
Per installare o aggiornare NVM è possibile utilizzare il comando curl per scaricare ed eseguire il file. Puoi ottenere l'ultima versione dal repository ufficiale di nvm. Copia il comando curl dalla sezione readme del repository.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
Questo comando installerà NVM sul tuo account. Per utilizzare lo strumento devi procurarti il tuo .bashrc
file.
source ~/.bashrc
Per verificare l'installazione utilizzare il seguente comando.
command -v nvm
Se l'installazione ha esito positivo dovresti vedere l'output come nvm
.
Elenca le versioni di Node.js
Una volta installata NVM, puoi elencare tutte le versioni Node.js disponibili utilizzando il ls-remote
comando.
nvm ls-remote
Ci sarà una lista molto lunga da cui scegliere. Puoi installare una qualsiasi delle versioni elencate qui.
Se desideri installare la versione Node.js 12.18.3 puoi semplicemente usare il install
comando con la versione specifica.
nvm install v16.15.0
Controlla l'installazione usando il modo predefinito.
node -v
Output v16.15.0
può anche installare una versione basata su questi alias. Ad esempio, per installare l'ultima versione del supporto a lungo termine, gallium
, esegui quanto segue.
nvm install lts/gallium
Puoi passare da una versione installata all'altra utilizzando nvm use
comando.
nvm use v16.15.0
Questo è tutto.
Crea un'applicazione Node.js
Ora puoi creare un'app Node.js demo.
cd ~/ sudo nano server.js
Inserisci il seguente codice nel file
const http = require('http'); const hostname = 'localhost'; const port = 3000; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Welcome to Node.js!\n'); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); });
Salva il file ed esci.
Installa e configura Nginx
sudo apt install nginx
Rimuovi le configurazioni predefinite
sudo rm /etc/nginx/sites-available/default sudo rm /etc/nginx/sites-enabled/default
Crea una nuova configurazione Nginx
sudo nano /etc/nginx/sites-available/yourdomainname.conf
Incolla quanto segue
server { listen [::]:80; listen 80; server_name yourdomainname.com www.yourdomainname.com; location / { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } }
Salva ed esci dal file
Abilita la tua configurazione creando un link simbolico
sudo ln -s /etc/nginx/sites-available/yourdomainname.conf /etc/nginx/sites-enabled/yourdomainname.conf
Controlla la tua configurazione di Nginx e riavvia Nginx
sudo nginx -t sudo service nginx restart
Ora puoi visitare il tuo nome di dominio nel browser, dovresti visualizzare l'output del tuo server.js
(Benvenuto in Node.js!)
Installa il certificato SSL Let's Encrypt
HTTPS
HTTPS è un protocollo per la comunicazione sicura tra un server (istanza) e un client (browser web). Grazie all'introduzione di Let's Encrypt, che fornisce certificati SSL gratuiti, HTTPS è adottato da tutti e fornisce anche fiducia al tuo pubblico.
sudo apt install python3-certbot-nginx
Ora abbiamo installato Certbot di Let's Encrypt per Ubuntu 22.04, esegui questo comando per ricevere i tuoi certificati.
sudo certbot --nginx --redirect --no-eff-email --agree-tos -m [email protected] -d yourdomain.com -d www.yourdomain.com
Il client Certbot genererà automaticamente il nuovo certificato per il tuo dominio e configurerà anche il reindirizzamento HTTPs.
Ora puoi configurare il rinnovo automatico.
sudo certbot renew --dry-run
Conclusione
Ora hai imparato come utilizzare NVM – Node Version Manager per installare Node.js e anche configurare il proxy inverso Nginx e installare Let's Encrypt SSL e proteggerlo.
Grazie per il tuo tempo. In caso di problemi o feedback, si prega di lasciare un commento qui sotto.