Jak hostować bota discord.js na VPS – poradnik

Niniejszy poradnik przedstawia jak hostować bota Discord.js na serwerze VPS, uwzględniając aspekty techniczne, bezpieczeństwo i wydajność. Możesz również skorzystać z oferty hostingu botów Discord w celu dużo prostszego i wydajnego hostowania bota w node.js lub w pythonie.

Wymagana wiedza

  • Podstawy JavaScript
  • Znajomość Node.js
  • Podstawowa wiedza o systemach Linux

Niezbędne narzędzia

  • Node.js (LTS)
  • npm
  • Token bota Discord

Przygotowanie Serwera

Aktualizacja Systemu

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git wget software-properties-common

Podstawowa Konfiguracja Bezpieczeństwa

# Konfiguracja zapory
sudo ufw allow OpenSSH
sudo ufw enable

Instalacja Środowiska

Instalacja Node.js

# Dodanie oficjalnego repozytorium NodeSource
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -

# Instalacja Node.js
sudo apt install -y nodejs

# Weryfikacja wersji
node -v
npm -v

Konfiguracja Projektu

Struktura Katalogów

mkdir -p /opt/discord-bot
cd /opt/discord-bot

Inicjalizacja Projektu

# Inicjalizacja projektu
npm init -y

# Instalacja zależności
npm install discord.js dotenv

Instalacja PM2

# Globalnie instalujemy PM2
sudo npm install -g pm2

# Uruchomienie bota
pm2 start index.js --name discord-bot \
    --log-date-format "YYYY-MM-DD HH:mm:ss" \
    -o logs/bot-output.log \
    -e logs/bot-error.log

# Automatyczny start po restarcie
pm2 startup systemd
pm2 save

Podstawowe Komendy

# Status bota
pm2 status

# Restart bota
pm2 restart discord-bot

# Zatrzymanie bota
pm2 stop discord-bot

Konfiguracja firewalla

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow ssh
sudo ufw enable

Monitoring bota

# Monitoring procesów
pm2 monit

# Logi bota
pm2 logs discord-bot

# Zużycie zasobów
top
htop

Rozwiązywanie Problemów

Obsługa Błędów

W pliku index.js:

process.on('unhandledRejection', (reason, promise) => {
    console.error('Błąd nieobsłużonej obietnicy:', reason);
});

process.on('uncaughtException', (error) => {
    console.error('Nieoczekiwany błąd:', error);
    process.exit(1);
});

ivall

Programista, twórca stron internetowych pod każdym względem, entuzjasta gier komputerowych.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Technologie

Jak wybrać najlepszego dostawcę Internetu dla Twojego domu?

Wybór dostawcy Internetu dla Twojego domu może być trudnym zadaniem. Na rynku dostępnych jest wiele ofert, które różnią się nie tylko ceną, ale również jakością i dodatkowymi usługami. W tym artykule podpowiem Ci, na co zwrócić uwagę przy wyborze oraz jak porównać oferty różnych dostawców. Porównanie ofert różnych dostawców Na co zwrócić uwagę przy wyborze […]

Czytaj dalej
Poradniki Technologie

Jak włożyć płytę do PlayStation 5?

W dzisiejszych czasach gry wideo stały się nieodłączną częścią naszego życia. PlayStation 5, najnowsza konsola Sony, jest jednym z najpopularniejszych urządzeń do grania. Jednak aby cieszyć się grami na PS5, ważne jest, aby umieć obsługiwać czytnik płyt. W tym artykule przedstawimy krok po kroku, jak otworzyć, włożyć i usunąć płytę z czytnika PS5, a także […]

Czytaj dalej
Poradniki Technologie

Jak cofnąć aktualizację nakładki MIUI?

Zaktualizowałeś swoje urządzenie Xiaomi do najnowszej wersji MIUI i teraz napotykasz problemy? Nie martw się – istnieje sposób, aby cofnąć aktualizację MIUI i przywrócić poprzednią wersję systemu na swoim smartfonie Xiaomi, Redmi lub POCO.

Czytaj dalej