assorted icon lot

Installare Node su hosting condiviso con Cpanel

Sebbene abbandonato, CentOS è ancora molto diffuso. Se hai bisogno di installare node.js c'è ancora qualche possibilità

Introduzione

Quando si dice che non è bene tenere tutte le uova nello stesso paniere… Cpanel, il pannello di controllo per server hosting, aveva affondato tutte le sue radici nella distribuzione Centos, rinomata per la sua stabilità e sicurezza. Persino il suo nome lo affermava: Community ENTerprise Operating System

Purtroppo i piani alti di Red Hat, multinazionale del software tra le più importanti al mondo, non consideravano CentOS un prodotto da mantenere e, così, dal 30 giugno 2024 la più diffusa distribuzione per la costruzione di server web ha raggiunto il famigerato “fine vita”.

Questo complica di molto la vita degli ingegneri che dovranno migrare infrastrutture anche molto complesse verso nuovi sistemi. Ci vorrà del tempo.

Intanto molti si trovano ad usare CentOS 7 e avranno sicuramente qualche problemino con le applicazioni più moderne.

Node

Uno di questi problemi è legato a Node.js che, in CentOS, è supportato fino alla versione 17. Se cerchi una LTS, la 16 è la più recente tra quelle disponibili. Non provarci nemmeno… la 18 LTS non gira, ci sono un bel po’ di dipendenze non soddisfatte e se provi a soddisfarle penso che ne usciresti con le “ossa” (del tuo server) rotte.

Quindi la versione più recente che è possibile installare è la 17, ma come si fa? Per molti è semplice: trovano il comando nel pannello di controllo. Per altri, invece, non è possibile se l’amministratore ha bloccato l’installazione di pacchetti Node per paura di problemi con le dipendenze e di sicurezza.

Requisiti:

  • Si può usare file manager o SSH o consolle; da terminale basta un utente regolare, non serve root
  • è importante che si possano vedere i file nascosti, quindi in File Manager clicca sulle opzioni in alto a destra e abilita la visualizzazione dei file nascosti
  • il file di profilo dell’utente si trova nella root della home e si chiama .bashrc, verifica che lo vedi

Usando SSH (consigliato)

Una volta fatto login al server (ti ricordo che basta un utente regolare) dovrai scaricare node js, scompattarlo e rinominare la directory:

curl https://nodejs.org/dist/v17.9.1/node-v17.9.1-linux-x64.tar.xz | tar xz
mv node-v17.9.1-linux-x64 nodejs

Aprire il file ~/.bashrc con un editor di testo e aggiungere le righe seguenti alla fine:

# Nodejs
VERSION= v17.9.1
DISTRO=linux-x64
export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH

Ora devi solo ricaricare il profilo digitando il comando:

. ~/.bashrc

Eseguire dei test digitando i seguenti comandi:

node -v
npm version
npx -v

Se è tutto regolare, si avrà un output simile:

➜ node -v
v17.9.1
➜ npm version
{
npm: '8.11.0',
node: '17.9.1',
v8: '9.6.180.15-node.16',
uv: '1.43.0',
zlib: '1.2.11',
brotli: '1.0.9',
ares: '1.18.1',
modules: '102',
nghttp2: '1.47.0',
napi: '8',
llhttp: '6.0.4',
openssl: '3.0.3+quic',
cldr: '40.0',
icu: '70.1',
tz: '2021a3',
unicode: '14.0',
ngtcp2: '0.1.0-DEV',
nghttp3: '0.1.0-DEV'
}
➜ npx -v
8.11.0

Usando File Manager

Scarica la versione corretta di Node.js da:
https://nodejs.org/dist/v17.9.1/node-v17.9.1-linux-x64.tar.xz
Poi convertila in file .zip (anche aprendola e ricompattandola) in quanto File Manager di Cpanel non supporta il formato .tar.xz. Apri file manager e caricala nella root dell’account. Estrai lo zip appena caricato. A questo punto ti converrà rinominare la cartella in qualcosa di più semplice, ad esempio “nodejs”.

Infine, dovrai aprire il file .bashrc con l’editor di File Manager e aggiungere le seguenti righe alla fine del file:

# Nodejs
VERSION= v17.9.1
DISTRO=linux-x64
export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH

Ora non rimane altro che fare logout e, alla riapertura, node sarà un comando a disposizione del tuo utente e delle tue applicazioni.

Torna in alto