Installer un bot discord sur un VPS KVM Lordhosting
Guide complet pour installer et héberger un bot Discord 24/7 sur un VPS KVM Lordhosting : installation Node.js, pm2, démarrage automatique et gestion des logs.
Héberger un bot Discord sur son propre PC pose un problème évident : dès que la machine s'éteint, le bot passe hors ligne. Un VPS KVM tourne 24h/24 et vous offre un environnement Linux dédié, parfait pour un bot Node.js. Dans ce guide, vous allez installer Node.js, transférer les fichiers de votre bot, puis le maintenir en ligne en permanence avec pm2.
Prérequis
- Un VPS KVM sous Debian ou Ubuntu, accessible en SSH (l'adresse IP et les identifiants se trouvent dans votre espace client Lordhosting)
- Un client SSH (terminal sous Linux/macOS, PowerShell ou PuTTY sous Windows) et un client SFTP comme FileZilla ou WinSCP
- Les fichiers de votre bot (par exemple
monfichier.jsetpackage.json) ainsi que son token, récupéré sur le portail développeur Discord
💡 Si vous n'avez pas encore sécurisé votre VPS, suivez d'abord notre guide Sécuriser un VPS Linux.
1. Mettre à jour son système
Connectez-vous à votre serveur en SSH :
ssh root@votre_ip
Puis mettez à jour la liste des paquets et le système :
sudo apt update && sudo apt upgrade -y
2. Installation de Node.js
Installez Node.js depuis le dépôt NodeSource :
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs
Adaptez 16.x à la version requise par votre librairie : les versions récentes de discord.js exigent une version LTS plus récente de Node.js. En cas de doute, consultez le package.json de votre bot ou la documentation de la librairie.
3. Vérifier que celui-ci est bien installé
node -v
npm -v
Les deux commandes doivent afficher un numéro de version. Si ce n'est pas le cas, reprenez l'étape 2.
4. Importer les fichiers de votre bot sur votre VPS
Deux méthodes possibles :
- SFTP : connectez FileZilla ou WinSCP avec les mêmes identifiants que le SSH (port 22) et déposez le dossier du bot, par exemple dans
/root/mon-bot. - Git : si votre code est versionné, clonez-le directement sur le serveur avec
git clone.
N'envoyez pas le dossier node_modules : il sera régénéré sur le serveur à l'étape suivante. Vérifiez aussi que votre token n'est pas écrit en dur dans le code, mais stocké dans un fichier .env ou config.json.
5. Lancer votre bot discord
Placez-vous dans le dossier du bot, installez les dépendances puis démarrez-le :
cd /root/mon-bot
npm install
node monfichier.js
Votre bot doit apparaître en ligne sur votre serveur Discord. Ce premier lancement sert de test : si vous fermez le terminal, le bot s'arrête. L'étape suivante règle ce problème.
6. Maintenir le bot en ligne 24/7 avec pm2
pm2 est un gestionnaire de processus pour Node.js : il détache le bot de votre session SSH, le relance automatiquement en cas de crash et le démarre au boot du VPS.
sudo npm install -g pm2
pm2 start monfichier.js --name mon-bot
pm2 startup
pm2 save
La commande pm2 startup affiche une ligne à copier-coller pour activer le démarrage automatique, puis pm2 save enregistre la liste des processus à relancer.
7. Gérer le bot et consulter les logs
Quelques commandes utiles au quotidien :
pm2 status # état du bot
pm2 logs mon-bot # logs en temps réel
pm2 restart mon-bot # redémarrer après une mise à jour
pm2 stop mon-bot # arrêter le bot
Problèmes fréquents
« Error: Cannot find module 'discord.js' » : les dépendances ne sont pas installées. Lancez npm install dans le dossier qui contient le fichier package.json, pas ailleurs.
« An invalid token was provided » : le token présent dans votre .env ou config.json est incorrect ou a été régénéré. Créez-en un nouveau dans le portail développeur Discord (onglet Bot → Reset Token) et mettez le fichier à jour. Pensez aussi à activer les Privileged Gateway Intents si votre bot en a besoin.
Le bot s'arrête quand vous fermez le terminal : il a été lancé directement avec node. Relancez-le avec pm2 (étape 6) pour le détacher de votre session SSH.
Votre bot Discord tourne désormais 24h/24 sur votre VPS KVM, se relance seul en cas de crash et survit aux redémarrages du serveur. Pour aller plus loin, consultez notre guide pour surveiller le trafic réseau de votre VPS.
❗Toujours bon à savoir

