Хостинг Discord-ботов

Хостинг Discord-ботов на Python и Node.js

Разместите своего Discord-бота на сервере. Загрузка кода, настройки запуска, файлы и консоль — в одной панели.

Посмотреть тарифы

Для собственного кода. Python и Node.js. Почасовая и месячная оплата.

Панель voln.io: сервер бота работает, кнопки «Выключить» и «Перезапустить», ресурсы тарифаКонсоль сервера: установка зависимостей и вывод бота
Демонстрационный проект в панели voln.io
  • Без настройки ОС
  • Управление в браузере
  • Автоперезапуск при сбое
  • Файлы сохраняются при перезапуске

Переписывать код бота под нас не нужно.

Три шага до работающего бота

Всё в браузере. Ни командной строки, ни ключей, ни настройки самого сервера.

  1. Загрузите архив с кодом

    Он загружается в файловом менеджере панели и распаковывается там же. Кроме .zip подойдут .tar.gz, .7z и .rar; один файл — не больше 100 МБ.

  2. Впишите токен и проверьте файл запуска

    Токен выдаёт Discord Developer Portal (Applications → Bot) — вставьте его в поле «Токен бота». Рядом поле «Файл запуска»: в нём имя файла, с которого бот начинается.

  3. Дождитесь, пока бот стартует

    В панели видно, как ставятся библиотеки и как запускается код. Пригласите бота на свой сервер Discord по ссылке OAuth2 и проверьте команду.

Настройки запуска в панели: платформа, токен бота скрыт маской, файл запуска bot.py
Это весь путь. Дальше — ваш бот.

Загрузить код — минута. Токен и файл запуска впишете уже в панели.

Всё управление — в браузере

Это экраны панели, которые вы получите. Без командной строки и настройки ОС.

Управляйте запуском

Состояние сервера видно сразу. Включить, выключить и перезапустить — одной кнопкой. Если процесс упадёт, сервис перезапустит его сам.

Шапка сервера бота: состояние «Работает», кнопки управления, ресурсы тарифа

Смотрите сообщения приложения

В консоли — установка зависимостей и всё, что печатает ваш код. Ошибки и предупреждения вынесены в отдельные фильтры.

Консоль сервера: установка библиотек и вывод бота

Обновляйте проект

Файлы загружаются через браузер, файл запуска и зависимости панель находит сама. Токен задаётся в настройках, а не в коде.

Файловый менеджер панели с проектом бота и блоком «Запуск бота»

Если бот не запустился, вам скажут почему

Панель читает вывод бота и объясняет причину по-русски. И сразу говорит, где чинить: где-то достаточно взять тариф побольше, где-то — поправить настройку, а где-то дело в самом коде. Обычно именно на этот вопрос и уходит весь вечер.

Поможет тариф

Боту не хватило памяти

Бота остановили: он занял больше памяти, чем даёт тариф. Возьмите тариф с памятью побольше — код и файлы останутся на месте, загружать их заново не нужно.

Killed
Чинит автор бота

Библиотеки не установились

Установка оборвалась ошибкой, и до кода бота дело не дошло. В выводе бота видно, какая именно строка из requirements.txt или package.json не встала. Часть библиотек перед установкой нужно собирать, а на сервере для ботов нечем — таким нужен VPS.

ERROR: No matching distribution found for discord.py==9.9.9
Чинится в настройках

Файл запуска не найден

На вкладке «Настройки игры» указано имя файла, которого среди файлов бота нет. Откройте её и проверьте поле «Файл запуска». Ещё частая причина — архив распаковался вместе со своей папкой, и код лежит внутри неё.

Файл bot.py не найден. Загрузите код бота через файловый менеджер панели и запустите сервер снова.
Чинится в настройках

Токен не подошёл

Бот запустился, но войти не смог. Откройте вкладку «Настройки игры» и проверьте поле «Токен бота»: токен могли отозвать, или он скопировался с лишним пробелом.

discord.errors.LoginFailure: Improper token has been passed.
Вечер на поиск причины вам больше не нужен.

Панель назовёт её сама — и скажет, на чьей стороне чинить.

Подойдёт ли ваш бот

Особых требований к проекту у нас нет. Нужно только, чтобы бот запускался одним файлом, а его библиотеки были перечислены рядом.

Подойдёт

  • Обычный бот на Python или Node.js
  • Список библиотек в requirements.txt или package.json
  • Одна программа, которая запускается одним файлом
  • База SQLite или просто файлы на диске
  • Обращения к чужим сайтам и базам по сети
  • Бот сам подключается к Discord по токену

Потребует VPS

  • Управление сервером своими руками
  • Несколько программ, работающих рядом
  • Chromium, Selenium, Playwright — браузер внутри бота
  • ffmpeg и другие системные программы
  • Своя база PostgreSQL или Redis на том же сервере
  • Своя нейросеть и видеокарта
  • Полные права на сервере
Посмотреть VPS →

Сколько стоит хостинг Discord-бота

Тарифы отличаются только памятью и местом на диске. Платить можно помесячно или по часам: удалили сервер — дальше не списывается. Поменять тариф можно потом — код загружать заново не придётся, файлы и база останутся на месте.

Бот · Старт

—/ мес
  • 0,5 ГБ памяти
  • 50 ГБ диска
  • Python 3.12 или Node.js 22
  • Файлы и база никуда не пропадают

Бот · Рабочий

—/ мес
  • 1 ГБ памяти
  • 50 ГБ диска
  • Python 3.12 или Node.js 22
  • Файлы и база никуда не пропадают

Бот · Нагруженный

—/ мес
  • 2 ГБ памяти
  • 50 ГБ диска
  • Python 3.12 или Node.js 22
  • Файлы и база никуда не пропадают

Бот · Максимум

—/ мес
  • 4 ГБ памяти
  • 50 ГБ диска
  • Python 3.12 или Node.js 22
  • Файлы и база никуда не пропадают

Проверить можно, ничем не рискуя

Месяц вперёд платить не нужно. Оплата идёт по часам, и сутки на начальном тарифе стоят меньше стакана кофе: загрузили код, посмотрели, как работает, — не подошло, удалили сервер, и списания прекратились в тот же час.

Уже списанные часы деньгами обратно не возвращаются — поэтому мы и не просим платить за месяц, пока вы не убедились, что всё работает.

Компьютер можно выключить

Бот работает у нас. Ваш домашний интернет, спящий ноутбук и закрытый браузер на него никак не влияют.

  • Не засыпает от простоя

    Пока сервер запущен, бот на связи круглосуточно — и ночью, и когда ему долго никто не пишет.

  • Упал — поднимется сам

    Если бот вылетел, мы запускаем его заново. А если он вылетает раз за разом, перезапуски прекращаются: так ошибка не останется незамеченной.

  • Видно, что делает бот

    В панели открывается окно с его выводом: что поставилось, что запустилось и на чём бот остановился.

  • Данные никуда не пропадают

    Файлы бота и его база (например, SQLite) лежат на диске сервера и переживают перезапуск.

Компьютер выключен, бот на связи.

Загружаете архив и вписываете токен — дальше сервер держит бота сам.

Ваш код останется таким, какой он есть

Переделывать бота под хостинг не нужно. Достаточно, чтобы было понятно, какой файл запускать и какие библиотеки ему нужны.

Вкладка «Файлы»: блок «Запуск бота» и файловый менеджер с проектом бота
01

Загружаете то, что уже написано

Те же файлы, что лежат у вас на компьютере. Рядом с ними обычно есть список библиотек: requirements.txt у Python, package.json у Node.js.

02

Панель сама поймёт, что запускать

Она смотрит, на чём написан бот, и предлагает файл, с которого он начинается. Если подходящих файлов несколько — спросит вас, а не выберет молча.

03

Выбор можно поправить в любой момент

«Файл запуска» — обычное поле в настройках сервера. Ошиблись — впишите другое имя. Загружать код заново не придётся.

Токен хранится отдельно от кода

Сохранённый токен не возвращается в форму настроек. Ваш код получает его через переменную окружения BOT_TOKEN.

  • Не возвращается в форму настроек

    Один раз вписали — и обратно в форму настроек он уже не возвращается. Даже вам.

  • Не включается в команду запуска

    Панель не подставляет токен в команду запуска. Не выводите BOT_TOKEN в логах своего приложения: эти сообщения попадут в консоль.

  • Бот получает его сам

    Код читает токен из BOT_TOKEN — вписывать его в файлы бота не нужно.

  • Меняется в одну строку

    Сбросили токен в Developer Portal — впишите новый и перезапустите сервер.

Никаких сюрпризов на старте

Всё, что произойдёт с вашим кодом, написано в настройках сервера. Прочитать это можно ещё до первого запуска.

Логотип Python

Бот на Python

Готовый шаблон

Язык и версия
Python 3.12
Список библиотек
requirements.txt
Ставим библиотеки
pip install --user -r requirements.txt
Запускаем бота
python bot.py
Как работает
Работает постоянно, без своего сайта
Логотип Node.js

Бот на Node.js

Готовый шаблон

Язык и версия
Node.js 22
Список библиотек
package.json
Ставим библиотеки
npm install --omit=dev
Запускаем бота
node index.js
Как работает
Работает постоянно, без своего сайта

Если библиотеки уже лежат рядом с кодом, установку можно выключить переключателем — тогда бот стартует быстрее.

Библиотеки бота поставятся сами

Мы берём их из вашего списка — requirements.txt или package.json. Отдельно указывать ничего не нужно.

Python 3.12

  • discord.py
  • py-cord
  • nextcord
  • disnake
  • hikari

Node.js 22

  • discord.js
  • Eris
  • Oceanic.js

Список неполный. Если вашей библиотеки здесь нет — ничего страшного, ставится она точно так же.

Значит, ваш бот здесь заведётся.

Библиотеки ставим по вашему списку — ни строки в коде менять не нужно.

Как пригласить бота на сервер Discord

Токен и права настраиваются в Discord Developer Portal, а не у нас.

Приглашение

Ссылка OAuth2

OAuth2 → URL Generator: scope bot и, если нужны слэш-команды, applications.commands. Откройте ссылку и выберите свой сервер.

  • Выдавайте только нужные права
  • Права администратора по умолчанию не нужны
Intents

Разрешения на события

Message Content, Server Members и Presence включаются на вкладке Bot и должны совпадать с тем, что запрашивает ваш код. Без нужного intent бот запустится, но часть событий не получит.

Музыкальные и голосовые боты мы не обещаем: им обычно нужны ffmpeg и системные библиотеки.

Не арендуйте целый сервер ради одного бота

VPS — это пустой сервер, который вы настраиваете и обслуживаете сами. Иногда именно так и надо. Ради одного бота — почти никогда.

Хостинг ботов Voln

  • Код загружаете архивом из браузера
  • Python или Node.js и библиотеки ставим мы
  • Запуск, перезапуск и вывод бота — в одном окне
  • Токен хранится отдельно от кода
  • Память и диск — по тарифу

Обычный VPS

  • Систему и всё, что нужно боту, ставите сами
  • Сами следите, чтобы бот стартовал после перезагрузки
  • Вывод бота собираете сами
  • Обновления и безопасность — на вас
  • Зато можно всё: любые программы и любые языки

Про цену честно. Хостинги для ботов дешевле нас есть. Разница в том, что происходит, когда бот не запускается: там вы получаете строку из вывода на английском, здесь — причину по-русски и прямой ответ, чинить её вам, в настройках или нам. Если ваш бот поднимается с первого раза и никогда не падает — берите, что дешевле. Мы сделаны для остальных случаев.

Что здесь обычно запускают

Бот всегда один и тот же — ваша программа. Меняется только то, что она делает.

Команды и автоматизация

Слэш-команды, роли, приветствия и порядок в сообществе.

Уведомления и интеграции

События из внешних сервисов прямо в каналы.

Модерация

В пределах возможностей вашего кода и выданных боту разрешений.

Игровые сообщества

Вспомогательные боты: статистика, события, расписания.

Свои проекты

Любой бот на discord.py, discord.js и других библиотеках.

Функциональность определяется вашим кодом; voln.io предоставляет среду для его работы.

Частые вопросы

Про запуск, ограничения и то, что делаем мы, а что придётся вам.

Нужен ли готовый код?

Да. Это хостинг готового бота: мы даём среду Python или Node.js, а что делает бот, определяет ваш код. Конструктора без кода здесь нет.

Можно ли разместить код, написанный с помощью ИИ?

Да, если это обычный проект на Python или Node.js с файлом зависимостей. Откуда взялся код, значения не имеет — запускается он так же.

Какие языки и библиотеки поддерживаются?

Python и Node.js. discord.py, py-cord, nextcord, disnake, discord.js и другие библиотеки ставятся из requirements.txt или package.json, как любые зависимости.

Нужно ли держать компьютер включённым?

Нет. Бот работает на сервере и не зависит ни от вашего компьютера, ни от открытого браузера.

Где взять токен?

В Discord Developer Portal: Applications → ваше приложение → Bot → Reset Token. Токен вписывается в поле «Токен бота» в настройках сервера — в код его вшивать не нужно.

Как пригласить бота на сервер Discord?

В Developer Portal откройте OAuth2 → URL Generator, отметьте scope bot (и applications.commands, если у бота слэш-команды), выберите только те права, которые ему нужны, и откройте ссылку. Права администратора по умолчанию давать не стоит.

Что такое intents и где их включить?

Intents — разрешения на получение событий. Message Content, Server Members и Presence включаются в Developer Portal на вкладке Bot и должны совпадать с тем, что запрашивает ваш код. Без нужного intent бот запустится, но часть событий не получит.

Как загрузить проект и установить зависимости?

Загрузите архив или файлы в файловом менеджере панели. При запуске зависимости ставятся из requirements.txt или package.json.

Где посмотреть причину ошибки?

В консоли сервера: там сообщения установки зависимостей и вывод вашего приложения. Панель также показывает доступные диагностические сообщения о запуске.

Сохраняются ли файлы и SQLite?

Да, файлы проекта и локальная база SQLite сохраняются при обычном перезапуске. Это не резервная копия: важные данные стоит копировать отдельно.

Можно ли изменить тариф?

Да, тариф меняется в панели сервера без повторной загрузки проекта.

Как разместить несколько ботов?

Каждый бот — отдельный сервер со своим тарифом. Так один бот не мешает другому и перезапускается независимо.

Как остановить начисления?

Удалите сервер — начисления за него прекращаются. Остановка сервера начисления не прекращает: ресурсы остаются за вами.

Что, если проекту нужны системные программы?

Root-доступа и установки системных пакетов здесь нет. Проектам с ffmpeg, Chromium, Selenium или Playwright нужна другая конфигурация — например VPS.

Работают ли музыкальные и голосовые боты?

Мы не обещаем их работу: голосу обычно нужны ffmpeg и системные библиотеки, а их установка здесь недоступна. Для такого бота нужна отдельная проверка или VPS.

Ваш бот уже написан. Осталось его запустить.

Загрузите архив, впишите токен и запустите сервер. Если хочется сначала почитать — инструкция рядом.

Python и Node.js · Загрузка архивом · Работает круглосуточно · Поднимется сам