Vai al contenuto principale

VPS: Configura Node.js su Windows

Questa guida è stata creata con i seguenti prodotti:

(I dettagli possono variare con prodotti di fornitori diversi ma i concetti principali rimangono gli stessi)

Introduzione

Node.js è un ambiente di runtime JavaScript open-source e multipiattaforma che esegue codice JavaScript fuori dal browser, ad esempio su server o tramite strumenti da linea di comando. Basato sul motore V8, supporta I/O asincrono e event-driven, rendendolo super efficiente per costruire applicazioni di rete scalabili e in tempo reale.

Il paradigma “JavaScript ovunque” permette agli sviluppatori di usare un unico linguaggio sia per il backend che per il frontend.

Preparazione

Prima di configurare Node.js, devi preparare il tuo sistema. Questo include aggiornare il sistema operativo all’ultima versione e installare tutte le dipendenze necessarie. Questi passaggi garantiscono un ambiente stabile e aiutano a prevenire problemi durante o dopo l’installazione.

Aggiorna il sistema

Per assicurarti che il sistema abbia gli ultimi aggiornamenti software e di sicurezza, esegui sempre prima un aggiornamento completo. Usa questo comando:

sudo apt update && sudo apt upgrade -y

Così il sistema avrà tutte le patch di sicurezza e le versioni software più recenti prima di procedere.

Installa le dipendenze

Una volta completato l’aggiornamento, puoi procedere con l’installazione delle dipendenze. Node.js verrà eseguito sulla tua macchina tramite una serie di container Docker, quindi Docker deve essere installato prima. Usa questi comandi:

curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

Una guida completa all’installazione e all’uso di Docker è disponibile nel nostro tutorial Docker.

Installazione

Ora che hai tutto pronto e le preparazioni sono fatte, puoi procedere con l’installazione di Node.js.

Per usare Node.js in un ambiente isolato, devi prima scaricare l’immagine ufficiale basata su Alpine. Esegui questo comando per prendere l’ultima immagine Node.js 22, pronta per il deployment in container:

docker pull node:22-alpine

Poi puoi avviare un container basato su questa immagine e aprire una shell interattiva dentro di esso. Usa questo comando per partire con una shell interattiva. L’opzione --rm fa sì che il container venga rimosso automaticamente quando esci, così il tuo host resta pulito.

docker run -it --rm --entrypoint sh node:22-alpine

Dentro il container, verifica la versione di Node.js con node -v che dovrebbe mostrare v22.19.0. Puoi anche controllare la versione di npm con

npm -v e l’output atteso è 10.9.3. Così confermi che l’immagine ha le versioni corrette di Node.js e npm, pronte all’uso.

Configurazione

Dopo aver avviato il container Node.js, è consigliato configurare le impostazioni essenziali direttamente nell’ambiente. Un approccio comune è definire variabili d’ambiente, ad esempio:

export NODE_ENV=production

Questo attiva la modalità produzione, con ottimizzazioni di performance e logging adeguato. Per lo sviluppo, puoi invece impostare NODE_ENV=development per avere messaggi di errore dettagliati e funzionalità di debug.

Una struttura di progetto ben organizzata parte da un file di configurazione creato con:

npm init -y

Questo genera un file package.json, che definisce dipendenze, script e metadata del progetto. È il file centrale di configurazione per ogni app Node.js.

Le dipendenze si installano con npm install <package>, mentre quelle di sviluppo con npm install <package> --save-dev. La sezione scripts dentro package.json ti permette di definire comandi personalizzati, come npm start o npm run build, per semplificare l’esecuzione e la gestione del progetto.

Per setup più avanzati, Node.js si può personalizzare con file .npmrc o .nvmrc, che permettono di configurare registry privati, opzioni di caching o forzare una versione specifica di Node.js. Così le tue app girano sempre uguali su ambienti diversi.

Conclusione e risorse extra

Complimenti! Hai installato e configurato Node.js sul tuo VPS con successo. Ti consigliamo anche di dare un’occhiata a queste risorse, che possono darti supporto e spunti durante la configurazione del server:

Hai domande specifiche non trattate qui? Per qualsiasi dubbio o supporto, il nostro team è sempre pronto ad aiutarti, tutti i giorni! 🙂