Introduzione

Node.js è un ambiente runtime JavaScript multipiattaforma basato sul JavaScript di Chrome progettato per eseguire codice JavaScript sul lato server. Con Node.js è possibile creare applicazioni di rete scalabili.

npm, abbreviazione di Node Package Manager è il gestore pacchetti predefinito per Node.js che aiuta gli sviluppatori a condividere e riutilizzare il loro codice. Si riferisce anche al più grande repository di software al mondo per la pubblicazione di pacchetti Node.js open source

In questo articolo, ti illustreremo due modi diversi per installare Node.js e npm su CentOS 8. Scegli l'opzione di installazione che potrebbe essere più appropriata per il tuo ambiente.

Se desideri installare Node.js e NPM su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.

Connessione al Server

Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:

ssh [email protected]_DEL_SERVER

Successivamente sarà necessario inserire la password dell'utente root.

Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:

ssh [email protected]_DEL_SERVER

Successivamente vi verrà chiesto di inserire la password del vostro utente.

La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:

ssh [email protected]_DEL_SERVER -p PORTA

Installare Node.js e npm dai repository CentOS

Node.js e npm possono essere installati dai repository CentOS standard.

Elencare i moduli che forniscono il pacchetto nodejs eseguendo il comando seguente:

yum module list nodejs

L'output mostra che il modulo nodejs è disponibile con un solo flusso. Stream 10 rappresenta la versione di Node.js.

CentOS-8 - AppStream
Name                              Stream                            Profiles                                                         Summary
nodejs                            10 [d]                            common [d], development, minimal, s2i                            Javascript runtime
nodejs                            12                                common, development, minimal, s2i                                Javascript runtime

Il pacchetto nodejs fornisce quattro diversi profili. Il profilo predefinito, quello contrassegnato con [d] installa un insieme comune di pacchetti di runtime.

Per installare il pacchetto Node.js predefinito sul sistema CentOS, digitare:

sudo yum module install nodejs

Il comando sopra installa anche NPM.

Se sei uno sviluppatore, installa il profilo di sviluppo, che installa anche le librerie aggiuntive necessarie per creare moduli caricabili dinamicamente.

sudo yum module install nodejs/development

Una volta completata l'installazione, verificala digitando:

node --version

Il comando visualizza la versione di Node.js:

v10.16.3

Questo è il modo più semplice per installare Node.js e npm su CentOS 8 e dovrebbe essere sufficiente per la maggior parte dei casi d'uso.

Disinstallare Node.js

Se per alcuni motivi si desidera disinstallare i pacchetti Node.js e npm, utilizzare il comando seguente:

sudo yum module install nodejs

Installare Node.js e npm tramite NVM

NVM (Node Version Manager) è uno script bash che consente di gestire più versioni di Node.js per utente. Con NVM è possibile installare e disinstallare qualsiasi versione di Node.js che si desidera utilizzare o testare.

Per installare NVM sul tuo sistema CentOS, esegui il comando seguente. Non utilizzare sudo in quanto abiliterà lo script per l'utente root.

Installare curl se non è già installato:

sudo dnf install curl

Scaricare e avviare lo script:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash

Lo script di installazione clona il repository NVM da Github nella directory ~/.nvm e aggiunge il percorso nvm al profilo Bash o ZSH.

...
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

Per iniziare a utilizzare lo script nvm, aprire una nuova sessione della shell o eseguire i comandi stampati come output del comando precedente. Oppure esegui il seguente comando:

source ~/.bashrc

Ora che lo script nvm è abilitato su CentOS, è possibile installare l'ultima versione stabile di Node.js con:

nvm install node
...
Computing checksum with sha256sum
Checksums matched!
Now using node v13.0.1 (npm v6.12.0)
Creating default alias: default -> node (-> v13.0.1)

Installiamo altre due versioni, l'ultima versione LTS e la versione 10.16.0:

nvm install --lts
nvm install 10.16.0

Una volta completata l'installazione, puoi elencare tutte le versioni di Node.js installate digitando:

nvm ls
->     v10.16.0
       v12.13.0
        v13.0.1
default -> node (-> v13.0.1)
node -> stable (-> v13.0.1) (default)
stable -> 13.0 (-> v13.0.1) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/erbium (-> v12.13.0)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.2 (-> N/A)
lts/dubnium -> v10.17.0 (-> N/A)
lts/erbium -> v12.13.0

La voce con una freccia a destra (-> v10.16.0) è la versione utilizzata nella sessione di shell corrente. La versione predefinita utilizzata quando si aprono nuove sessioni di shell è impostata su v13.0.1.

Se desideri modificare la versione attualmente attiva, supponiamo che eseguiresti v12.13.0:

nvm use v12.13.0

Per modificare la versione di Node.js predefinito, utilizzare il parametro default:

nvm alias default v12.13.0

Conclusione

Ti abbiamo mostrato due modi diversi per installare Node.js e npm su CentOS 8. Il metodo che scegli dipende dai tuoi requisiti e dalle tue preferenze.

Se vuoi gestire i tuoi pacchetti npm con Yarn, consulta questo tutorial su come installare Yarn su CentOS 8.