Блог компанії 3v-Hosting

Як налаштувати сервер Discord на VPS

Адміністрування

8 хв.


Discord більше не є простою платформою для геймерів. За минулі роки він перетворився на повноцінну екосистему для спільнот, команд розробників, стартапів та онлайн-освіти. Він підтримує все – від звичайних чатів до складної автоматизації ботів та серверної інтеграції із зовнішніми системами. Налаштування власного Discord сервера на VPS дає вам повний контроль над його продуктивністю, доступністю та налаштуванням - те, чого не можуть запропонувати традиційний віртуальний хостинг або безкоштовні налаштування Discord. Давайте пройдемося процесом крок за кроком.

 

 

 

 

Чому варто розмістити Discord сервер на VPS

 

На перший погляд Discord - це хмарний сервіс, який «просто працює»: ви реєструєтеся, створюєте сервер та запрошуєте друзів. Але досвідчені користувачі часто хочуть більшого: боти, що налаштовуються, приватні інтеграції, автоматизація подій або навіть проксі-шар для управління комунікацією між зовнішніми сервісами. Розміщення цих компонентів на VPS (віртуальному приватному сервері) забезпечує стабільність, гнучкість та свободу від обмежень платформи.

VPS пропонує виділені ресурси CPU, RAM та сховища ізольовані від інших користувачів. Це означає, що ваші сервіси, пов'язані з Discord (боти, веб-хуки, музичні плеєри або аналітичні скрипти) можуть працювати цілодобово без простоїв і обмежень. Також простіше розгортати додаткове програмне забезпечення - наприклад, Node.js для логіки ботів, Docker для контейнерних розгортань або Nginx як зворотний проксі для веб-панелей управління.

 

 

 

 

Вибір правильної конфігурації VPS

 

Перш ніж будь-що налаштовувати, виберіть конфігурацію VPS, яка відповідає вашим цілям. Для простого бота Discord зазвичай достатньо 1 vCPU та 512 МБ ОЗУ. Але якщо ви плануєте запускати кілька ботів, розміщувати медіафайли або інтегрувати API з базами даних, вибирайте щонайменше 2 vCPU та 2 ГБ ОЗУ.

Вибір операційної системи також має значення. Більшість розробників віддають перевагу Ubuntu 22.04 LTS або Debian 12 через їх стабільність і широку підтримку спільноти. Обидві системи чудово працюють з бібліотеками API Discord та популярними середовищами програмування, такими як Python або Node.js.

При виборі хостинг-провайдера віддавайте перевагу низькій затримці, SSD-сховищу та стабільному підключенню, особливо якщо ваш сервер транслюватиме аудіо або обробляти великомасштабні події.

 

 

 

 

Крок 1: Налаштування середовища

 

Після покупки VPS підключіться через SSH: 

    ssh root@your-server-ip


Оновіть систему та встановіть необхідні пакети: 

    apt update && apt upgrade -y 
    apt install git curl build-essential -y


Потім встановіть Node.js – найпоширенішу платформу для розробки та запуску роботів Discord. 

    curl-fsSL https://deb.nodesource.com/setup_lts.x | bash - 
    apt install -y nodejs


Перевірте версію: 

    node -v 
    npm -v


Якщо ви плануєте запускати кілька ботів або підтримувати їхню постійну роботу, встановіть PM2, диспетчер процесів для програм Node.js: 

    npm install pm2 -g

 

 


 

Інші цікаві статті у нашому Блозі:


    - Як створити бота в Discord

    - Як встановити Node.js на Ubuntu 22.04

    - Як відкрити порт в UFW

    - Проблеми з продуктивністю VPS або Чому гальмує мій сервер?

 


 

 

Крок 2: Розробка бота Discord

 

Увійдіть до свого облікового запису Discord і перейдіть на портал розробників Discord. Натисніть «Новий додаток», надайте йому ім'я, потім перейдіть на вкладку «Бот» та натисніть «Додати бота». Скопіюйте токен – це буде ключ автентифікації вашого робота.

Ніколи не розголошуйте свій токен. Ставтеся до нього як до пароля.

Створіть новий каталог для вашого бота та ініціалізуйте проект Node.js:

    mkdir discord-bot && cd discord-bot
    npm init -y
    npm install discord.js


Тепер створіть простий файл бота:

    nano index.js


Вставте наступний мінімальний приклад: 

    const {Client, GatewayIntentBits} = require(„discord.js“); 
    const client = new Client({ intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.MessageContent] }); 

    client.on(„ready“, () => { 
    console.log(`Logged in as ${client.user.tag}!`); 
    }); 

    client.on(„messageCreate“, message => { 
    if (message.content === „!ping“) { 
    message.reply(„Pong!“); 
    } 
    }); 

    client.login(„YOUR_BOT_TOKEN“);


Збережіть файл і запустіть бота: 

    node index.js


Якщо ви бачите напис "Logged in as [bot name]!", Вітаємо - ваш бот заробив.

 

 

 

 

Крок 3: Запуск роботи в режимі 24/7

 

Запуск бота вручну недоцільний - він зупиниться після виходу із системи або перезапуску VPS. Тут на допомогу приходить PM2.

З каталогу бота запустіть: 

    pm2 start index.js --name discord-bot 
    pm2 save 
    pm2 startup


Остання команда виведе команду systemd - скопіюйте та виконайте її, щоб PM2 запускався автоматично під час перезавантаження.

Ви можете у будь-який час переглядати журнали: 

    pm2 logs discord-bot


Тепер ваш бот працює безперервно у фоновому режимі, навіть якщо VPS перезавантажується.

 

 

 

 

Крок 4: Захист та оптимізація VPS

 

Безпека має вирішальне значення для надання будь-яких послуг в Інтернеті. Почніть з налаштування користувача без прав root та увімкнення брандмауера: 

    adduser discordadmin 
    usermod -aG sudo discordadmin 
    ufw allow ssh 
    ufw enable


Ви також можете увімкнути автоматичні оновлення: 

    apt install unattended-upgrades 
    dpkg-reconfigure unattended-upgrades


Щоб уникнути витоків, зберігайте токен бота та інші секретні дані у змінних середовищах, а не у жорстко запрограмованому вигляді: 

    export DISCORD_TOKEN="your-token"


Потім змініть бота, щоб він читав його динамічно: 

    client.login(process.env.DISCORD_TOKEN);


Таким чином, ваш код залишиться безпечним, навіть якщо його буде опубліковано на GitHub або передано колегам.

 

 

 

 

Крок 5: Масштабування та моніторинг

 

Коли ваш проект зростає, вам може знадобитися розмістити кілька ботів або інтегрувати бази даних, такі як PostgreSQL або Redis для постійного зберігання даних. Саме тут проявляється справжня міць VPS.

Ви можете використовувати Docker Compose для запуску різних сервісів в ізольованих контейнерах - веб-панель управління в одному, логіка вашого робота в іншому, а Redis як кеш-шару. Такі інструменти, як Prometheus та Grafana, можуть відстежувати завантаження процесора, пам'яті та час відгуку API вашого сервера, забезпечуючи реальну видимість продуктивності.

Для забезпечення високої доступності розгляньте можливість запуску ботів на кількох екземплярах VPS з балансуванням навантаження. Такі платформи, як HAProxy або Nginx можуть ефективно розподіляти запити.

 

 

 

 

Усунення поширених проблем

 

Бот не відповідає? Перевірте токен і роздільну здатність бота - у порталі розробників має бути включено «MESSAGE CONTENT INTENT» (НАМІР ЗМІСТ ПОВІДОМЛЕННЯ).

Таймаути з'єднання? Переконайтеся, що брандмауер дозволяє вихідні з'єднання HTTPS з кінцевими точками API Discord.

Витоку пам'яті? Використовуйте моніторинг PM2 (pm2 monit) для виявлення процесів, які споживають багато ресурсів. Іноді оновлення бібліотеки discord.js усуває нестабільність.

 

 

 

 

Свобода самохостингу

 

Запуск Discord сервера на VPS – це не лише контроль, а й незалежність. Ви самі вирішуєте, коли оновлювати, які функції розгортати та наскільки масштабувати. Це ваш власний куточок цифрового світу, що працює за вашими правилами.

З правильною конфігурацією VPS навіть невеликий проект може перетворитися на повноцінний центр автоматизації, який обслуговує сотні серверів та тисячі користувачів. А що найкраще? Ви більше не обмежені чужими обмеженнями – єдиною межею стає ваша креативність.

Таким чином, налаштування Discord сервера на VPS поєднує в собі найкраще із двох світів: універсальну комунікаційну платформу Discord та гнучкість виділеного середовища. Незалежно від того, чи керуєте ви спільнотою, створюєте інструменти для розробників або експериментуєте з автоматизацією – налаштування окупиться. Після налаштування VPS залишається лише отримувати задоволення: експериментувати, створювати та спостерігати, як ваш цифровий світ оживає.