Un bot Discord consomme très peu : avec l'offre la plus petite sous Linux, tu as largement de quoi faire. Ce dont il a besoin, en revanche, c'est d'être allumé en permanence, et c'est à ça que sert PM2.
1. Installe Node.js
La version LTS actuelle depuis le dépôt officiel de NodeSource :
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
node -v
2. Envoie ton bot
Avec git clone s'il est sur GitHub, ou en envoyant le dossier par SFTP (comment). Ensuite, dans son dossier :
cd /root/monbot
npm install
Mets le token du bot dans son fichier .env (ou là où ton code le lit). Ne l'envoie jamais sur GitHub et ne le colle pas dans un ticket.
3. Lance-le avec PM2
npm install -g pm2
pm2 start index.js --name monbot
Remplace index.js par le fichier d'entrée de ton bot (celui indiqué dans "main" de son package.json).
4. Qu'il démarre tout seul avec le VPS
pm2 save
pm2 startup systemd
pm2 save enregistre la liste des processus et pm2 startup la restaure à chaque démarrage.
Au quotidien
pm2 status # est-il en ligne ?
pm2 logs monbot # voir ce qu'il écrit (Ctrl + C pour quitter)
pm2 restart monbot # le redémarrer après avoir modifié le code
pm2 monit # consommation CPU et mémoire en direct
Ton bot est en Python ?
PM2 s'en occupe aussi :
apt install -y python3-venv
cd /root/monbot
python3 -m venv venv
venv/bin/pip install -r requirements.txt
pm2 start bot.py --name monbot --interpreter venv/bin/python3
Puis le même pm2 save qu'à l'étape 4.