En Discord-bot, der bare startes manuelt, stopper, så snart terminalen lukkes, eller processen crasher. Med et procesværktøj som PM2 eller systemd holder du botten kørende døgnet rundt med automatisk genstart.
PM2 til Node.js-bots (på en VPS)
PM2 er en procesmanager designet til Node.js og fungerer perfekt til Discord-bots. Installer den globalt:
npm install -g pm2
Start din bot med PM2:
pm2 start index.js --name "minbot"
Nu kører botten i baggrunden. Nyttige kommandoer:
pm2 listviser alle kørende processer.pm2 logs minbotviser realtidslogs.pm2 restart minbotgenstarter botten.pm2 stop minbotstopper den.
For at botten starter automatisk, når VPS-serveren genstartes:
pm2 startup
Kør den kommando, PM2 viser dig (den opsætter en systemd-service), og gem derefter tilstanden:
pm2 save
Nu overlever din bot også en servergenstart.
systemd til Python-bots (på en VPS)
Til Python-bots bruger du systemd, som allerede er en del af de fleste Linux-distributioner. Opret en servicefil:
sudo nano /etc/systemd/system/minbot.service
Indhold:
[Unit]
Description=Min Discord Bot
After=network.target
[Service]
Type=simple
User=botbruger
WorkingDirectory=/home/botbruger/minbot
ExecStart=/usr/bin/python3 bot.py
Restart=always
RestartSec=10
EnvironmentFile=/home/botbruger/minbot/.env
[Install]
WantedBy=multi-user.target
Aktivér og start servicen:
sudo systemctl enable minbotsudo systemctl start minbot
Tjek status med sudo systemctl status minbot og se logs med journalctl -u minbot -f.
Sikkerhed: beskyt dit bot-token
Dit bot-token giver fuld kontrol over botten. Følg disse regler:
- Gem aldrig tokenet i kildekoden. Brug en
.env-fil eller miljøvariabler. - Tilføj
.envtil din.gitignore, så tokenet aldrig ender i et repository. - Kør botten som en dedikeret bruger uden sudo-rettigheder, ikke som root.
Bothosting via gamepanelet
Hoster du din bot på HostValues' bothosting i stedet for en VPS, håndterer panelet allerede genstart og processtyring for dig. Du skal blot uploade dine filer, indstille startfilen under fanen Startup, og starte botten. Crasher den, kan du sætte en planlagt genstart op via fanen Schedules. Se også vores artikel om at få din Discord-bot online.