Node.js
Introduction
Node.js est une plateforme serveur qui exécute des applications écrites en JavaScript.
Tout d’abord, vous devez installer Node.js :
- Allez dans "Paramètres" -> "Applications"

- Cliquez sur le bouton "Installer" pour la version requise de Node.js

Créez un site web :
- Sélectionnez un modèle pour un site web Node.js

- Indiquez le domaine et les paramètres associés. À l’étape de configuration, vous pouvez modifier la BD, l’utilisateur FTP et le Backend

- Téléversez les fichiers de l’application dans le répertoire du site web
- Pour installer les dépendances, exécutez
npm20.15.1 installdans le Terminal (il faut installer l’application ttyd pour FASTPANEL®)

- Redémarrez Node.js en accédant au tableau de bord du site puis en ouvrant la section "Services".

Framework Express
En prenant le framework Express comme exemple, créons un serveur web simple :
- Connectez-vous au serveur via SSH en tant qu’utilisateur propriétaire du site (vous pouvez utiliser l’application ttyd pour FASTPANEL®)
- Créez un fichier
app.jsdans le répertoire du site web et remplissez-le avec le code suivant :
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}`);
});
- Dans le répertoire du site web, exécutez la commande pour installer express
npm20.15.1 install express
- Allez dans le tableau de bord du site, puis dans la section Services
- Redémarrez le service
- Vérifiez le site web
Docusaurus
En prenant l’application web Docusaurus comme exemple, configurons les paramètres :
- Connectez-vous au serveur via SSH en tant qu’utilisateur propriétaire du site (vous pouvez utiliser l’application ttyd pour FASTPANEL®)
- Dans le répertoire du site web, lancez l’installation de Docusaurus
npx20.15.1 create-docusaurus -j ./docs
-
Lorsqu’il vous est demandé de sélectionner un modèle, répondez classic (recommended)
-
Après l’installation, remplacez une ligne dans le fichier
docs/package.json
"start": "docusaurus start",
# replace with
"start": "docusaurus start --port $SERVICE_PORT",
$SERVICE_PORT est une variable système définie dans FASTPANEL®
-
Dans le panneau de contrôle, allez dans "paramètres du site" -> "Backend"
-
Sélectionnez le gestionnaire Standalone ou PM2.
-
Choisissez la version souhaitée de Node.js.
-
Indiquez le dossier de travail
docs -
Dans le champ Commande de lancement, saisissez :
npm run start -
Enregistrez. Attendez que l’application soit compilée (les informations apparaîtront dans les journaux). Vérifiez le site web
Next.js
En prenant Next.js avec Node.js 20.19 comme exemple, créons un serveur web simple :
- Connectez-vous au serveur via SSH en tant qu’utilisateur propriétaire du site web (vous pouvez également utiliser l’application ttyd dans FASTPANEL®).
- Dans le répertoire du site web, exécutez la commande d’initialisation du projet :
yarn20.19.4 init -y
yarn20.19.4 add next react react-dom
- Ajoutez un bloc scripts au fichier
package.json:
"scripts": {
"dev": "next dev -p $SERVICE_PORT",
"build": "next build",
"start": "next start -p $SERVICE_PORT"
}
- Créez un répertoire
pageset, à l’intérieur, ajoutez un fichier nomméindex.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
- Lancez la construction du projet.
yarn20.19.4 build
- Dans le panneau de contrôle, allez dans "paramètres du site" -> "Backend"
- Sélectionnez le gestionnaire Standalone ou PM2.
- Choisissez la version souhaitée de Node.js.
- Dans le champ Commande de lancement, saisissez :
yarn run start. - Enregistrez. Attendez que l’application soit compilée (les informations apparaîtront dans les journaux). Vérifiez le site web
Informations supplémentaires
En mode Standalone, un processus Node.js est lancé pour exécuter vos scripts.
En mode PM2, le gestionnaire de processus PM2 est utilisé pour gérer les processus Node.js, les journaux et la charge système.
Ce mode vous permet également de spécifier le nombre de workers — c’est-à-dire le nombre de processus Node.js traitant les requêtes entrantes vers le serveur.
De plus, ce mode fournit l’option Activer la surveillance des fichiers — PM2 redémarre automatiquement votre application lorsqu’un fichier est modifié dans le répertoire actuel ou dans ses sous-répertoires. Veuillez noter que ce mode entraîne une charge système supplémentaire et n’est pas recommandé pour les environnements de production.
De la même manière, vous pouvez configurer l’application si elle nécessite YARN au lieu de NPM
Vous pouvez installer les dépendances de votre projet répertoriées dans package.json à l’aide de YARN ou de NPM directement depuis FASTPANEL®. Pour ce faire, ouvrez la fiche du site web et accédez à la section Services :

Journaux
Une application Node.js peut générer des journaux. Dans FASTPANEL®, ils se trouvent dans le tableau de bord du site, dans la section Journaux, sous l’onglet "Journal Backend"
Commandes de console
Après l’installation de Node.js dans FASTPANEL®, les utilisateurs peuvent travailler avec leurs projets à l’aide de commandes de console telles que :
- pm2
- yarn20.15.1
- npx20.15.1
- npm20.15.1
- node20.15.1
Exemple :
$ 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 │
└────┴─────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
Chaque nom de commande inclut le numéro de version de Node.js qui a été installé. Dans cet exemple, la version disponible est Node.js 20.15.1.