Node.js
Introduzione
Node.js è una piattaforma server che esegue applicazioni scritte in JavaScript.
Per prima cosa, devi installare Node.js:
- Vai a "Settings" -> "Applications"

- Fai clic sul pulsante "Install" per la versione di Node.js richiesta

Crea un sito web:
- Seleziona un modello per un sito web Node.js

- Specifica il dominio e i parametri correlati. Nella fase di configurazione puoi modificare il DB, l'utente FTP e il Backend

- Carica i file dell'applicazione nella directory del sito web
- Per installare le dipendenze, esegui
npm20.15.1 installnel Terminale (è necessario installare l'applicazione ttyd per FASTPANEL®)

- Riavvia Node.js andando nella dashboard del sito e quindi aprendo la sezione "Services".

Framework Express
Usando il framework Express come esempio, creiamo un semplice server web:
- Connettiti al server tramite SSH come utente proprietario del sito (puoi usare l'applicazione ttyd per FASTPANEL®)
- Crea un file
app.jsnella directory del sito web e inserisci il codice seguente:
const express = require('express');
const app = express();
const PORT = process.env.SERVICE_PORT;
app.get('/', (req, res) => {
res.send('Hello! This is my first server on Node.js + Express 🚀');
});
app.listen(PORT, () => {
console.log(`Server is running at http://localhost:${PORT}`);
});
- Nella directory del sito web, esegui il comando per installare express
npm20.15.1 install express
- Vai alla dashboard del sito, quindi alla sezione Services
- Riavvia il servizio
- Controlla il sito web
Docusaurus
Usando l'applicazione web Docusaurus come esempio, configuriamo le impostazioni:
- Connettiti al server tramite SSH come utente proprietario del sito (puoi usare l'applicazione ttyd per FASTPANEL®)
- Nella directory del sito web, esegui l'installazione di Docusaurus
npx20.15.1 create-docusaurus -j ./docs
-
Quando ti viene chiesto di selezionare un modello, rispondi classic (recommended)
-
Dopo l'installazione, sostituisci una riga nel file
docs/package.json
"start": "docusaurus start",
# replace with
"start": "docusaurus start --port $SERVICE_PORT",
$SERVICE_PORT è una variabile di sistema impostata in FASTPANEL®
-
Nel pannello di controllo, vai a "site settings" -> "Backend"
-
Seleziona il gestore Standalone o PM2.
-
Scegli la versione di Node.js desiderata.
-
Specifica la cartella di lavoro
docs -
Nel campo Launch command, inserisci:
npm run start -
Salva. Attendi la compilazione dell'applicazione (le informazioni appariranno nei log). Controlla il sito web
Next.js
Usando Next.js con Node.js 20.19 come esempio, creiamo un semplice server web:
- Connettiti al server tramite SSH come utente proprietario del sito web (puoi anche usare l'applicazione ttyd in FASTPANEL®).
- Nella directory del sito web, esegui il comando di inizializzazione del progetto:
yarn20.19.4 init -y
yarn20.19.4 add next react react-dom
- Aggiungi un blocco scripts al file
package.json:
"scripts": {
"dev": "next dev -p $SERVICE_PORT",
"build": "next build",
"start": "next start -p $SERVICE_PORT"
}
- Crea una directory
pagese al suo interno aggiungi un file chiamatoindex.js:
mkdir pages
cat <<EOF > pages/index.js
export async function getServerSideProps() {
return {
props: {
nodeVersion: process.version,
port: process.env.SERVICE_PORT || 3000,
},
};
}
export default function Home({ nodeVersion, port }) {
return (
<div style={{
fontFamily: 'sans-serif',
textAlign: 'center',
marginTop: '20vh'
}}>
<h1>✅ It works!</h1>
<p>Next.js app running on Node.js {nodeVersion}</p>
<p>Port: {port}</p>
</div>
);
}
EOF
- Esegui la build del progetto.
yarn20.19.4 build
- Nel pannello di controllo, vai a "site settings" -> "Backend"
- Seleziona il gestore Standalone o PM2.
- Scegli la versione di Node.js desiderata.
- Nel campo Launch command, inserisci:
yarn run start. - Salva. Attendi la compilazione dell'applicazione (le informazioni appariranno nei log). Controlla il sito web
Informazioni aggiuntive
In modalità Standalone, viene avviato un processo Node.js per eseguire i tuoi script.
In modalità PM2, viene utilizzato il gestore di processi PM2 per gestire i processi Node.js, i log e il carico di sistema.
Questa modalità ti consente anche di specificare il numero di worker, cioè il numero di processi Node.js che gestiscono le richieste in arrivo al server.
Inoltre, questa modalità fornisce l'opzione Enable file watch — PM2 riavvia automaticamente la tua applicazione quando un file viene modificato nella directory corrente o nelle sue sottodirectory. Tieni presente che questa modalità introduce un carico di sistema aggiuntivo e non è consigliata per gli ambienti di produzione.
Allo stesso modo, puoi configurare l'applicazione se richiede YARN invece di NPM
Puoi installare le dipendenze del tuo progetto elencate in package.json usando YARN o NPM direttamente da FASTPANEL®. Per farlo, apri la scheda del sito web e vai alla sezione Services:

Log
Un'applicazione Node.js può generare log. In FASTPANEL®, si trovano nella dashboard del sito, nella sezione Logs, nella scheda "Backend log"
Comandi della console
Dopo aver installato Node.js in FASTPANEL®, gli utenti possono lavorare con i propri progetti usando comandi della console come:
- pm2
- yarn20.15.1
- npx20.15.1
- npm20.15.1
- node20.15.1
Esempio:
$ npm20.15.1 list
node-socket-port-server@1.0.0 /var/www/node_user/data/www/node.site
└── express@4.21.2
$ pm2 ls
┌────┬─────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
├────┼─────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0 │ amazing_site│ default │ 1.0.0 │ cluster │ 9355 │ 2m │ 0 │ online │ 0% │ 62.4mb │ user │ disabled │
│ 1 │ amazing_site│ default │ 1.0.0 │ cluster │ 9362 │ 2m │ 0 │ online │ 0% │ 62.5mb │ user │ disabled │
└────┴─────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
Ogni nome di comando include il numero di versione di Node.js installato. In questo esempio, la versione disponibile è Node.js 20.15.1.