Ein Discord-Bot verbraucht sehr wenig: Mit dem kleinsten Paket und Linux hast du mehr als genug. Was er braucht, ist, dass er immer läuft – und genau dafür gibt es PM2.
1. Node.js installieren
Die aktuelle LTS-Version aus dem offiziellen Repository von NodeSource:
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
node -v
2. Deinen Bot hochladen
Mit git clone, wenn er auf GitHub liegt, oder indem du den Ordner per SFTP hochlädst (so geht's). Danach, in seinem Ordner:
cd /root/meinbot
npm install
Trag den Token des Bots in seine .env-Datei ein (oder dort, wo dein Code ihn liest). Lade ihn niemals auf GitHub hoch und füge ihn nicht in ein Ticket ein.
3. Mit PM2 starten
npm install -g pm2
pm2 start index.js --name meinbot
Ersetze index.js durch die Einstiegsdatei deines Bots (die unter "main" in seiner package.json).
4. Mit dem VPS automatisch starten
pm2 save
pm2 startup systemd
pm2 save speichert die Liste der Prozesse, und pm2 startup stellt sie bei jedem Start wieder her.
Der Alltag
pm2 status # ist er online?
pm2 logs meinbot # ansehen, was er ausgibt (Strg + C zum Beenden)
pm2 restart meinbot # nach Codeänderungen neu starten
pm2 monit # CPU- und Speicherverbrauch live
Dein Bot ist in Python geschrieben?
PM2 kann das auch:
apt install -y python3-venv
cd /root/meinbot
python3 -m venv venv
venv/bin/pip install -r requirements.txt
pm2 start bot.py --name meinbot --interpreter venv/bin/python3
Und danach dasselbe pm2 save aus Schritt 4.