Боты
Бесплатный хостинг для Telegram-бота
Бесплатный хостинг для бота — почти всегда компромисс, и стоит сразу понять почему. У сайта есть простой: пока его никто не открывает, он ничего не делает, и на это время его можно усыпить, а первый же запрос по ссылке разбудит его обратно. У бота простоя нет. Публичной ссылки у него тоже нет: не Telegram приходит к боту, а бот сам всё время спрашивает у Telegram, нет ли новых сообщений. Он занят всегда, и разбудить его нечем — поэтому бесплатно бота нигде не держат бесконечно.
Отвечают на это по-разному. У Heroku бесплатного плана давно нет. На других зарубежных платформах он есть, но для регистрации просят карту зарубежного банка. Остаётся VPS: аренда, установка Python или Node.js, настройка автозапуска — и счёт каждый месяц даже за одного маленького бота.
В Netrun бота можно запустить и попробовать бесплатно: без VPS, без карты и без настройки сервера. На бесплатном тарифе бот работает три дня, потом выключается, а за сутки до этого приходит предупреждение. Код, настройки и секреты остаются на месте, ничего не удаляется. Чтобы бот остался в работе постоянно, нужен тариф Pro — на нём ограничения в три дня нет. Бесплатно и без ограничения по времени на Netrun живут сайты: они засыпают после пятнадцати минут простоя и просыпаются сами за пару секунд, когда их открывают.
Получите токен у BotFather#
Откройте в Telegram бота @BotFather, отправьте команду /newbot и следуйте подсказкам. В ответ придёт токен — длинная строка вида 123456:ABC, это ключ доступа к вашему боту, который выдаёт сам Telegram. Он понадобится при настройке, так что держите его под рукой и никому не показывайте.
Подготовьте код бота#
Подойдёт бот на Python (библиотеки aiogram или python-telegram-bot) или на Node.js (telegraf или grammY). Один важный момент: токен читайте не из строчки в коде, а из переменной окружения — это значение, которое задаётся отдельно и не лежит внутри файлов. В Python это os.environ["BOT_TOKEN"], в Node.js — process.env.BOT_TOKEN. Так токен не утечёт вместе с кодом.
Загрузите проект в Netrun#
Загрузите код ZIP-архивом или импортом из репозитория на GitHub — приватный тоже подойдёт. Папку с зависимостями (venv в Python или node_modules в Node.js) класть не нужно, Netrun сам определит язык и соберёт проект. Порт указывать не надо: бот не сайт и не слушает входящие запросы.
Укажите токен при настройке#
Netrun спросит, какие секреты нужны проекту. Добавьте переменную с тем же именем, что вы написали в коде, — например, BOT_TOKEN — и вставьте значение токена от BotFather. Оно сохранится отдельно от кода, и бот прочитает его при запуске.
Запустите и проверьте#
Нажмите запуск и следите за логами и статусом сборки прямо в кабинете в реальном времени. Когда проект перейдёт в рабочее состояние, напишите боту в Telegram — он должен ответить. Если бот упадёт позже, Netrun перезапустит его автоматически, следить за этим не нужно.
Когда ботов станет больше#
Бесплатный тариф — это один проект, то есть один бот. Захотите держать второго бота или другие проекты — докупите дополнительный слот: он добавляет ещё один проект сверх тарифа. На режим работы слот не влияет: бесплатное время у второго бота будет таким же, а постоянная работа без ограничения по времени — это Pro. Оплата идёт с баланса, актуальные цены видны в кабинете.
Так бота можно поднять из кода за несколько минут и увидеть его в работе, не разбираясь с сервером и не платя за него заранее. Бесплатное время ограничено тремя днями — у бота нет простоя, он занят всегда, и бесконечно бесплатным он не бывает нигде. Дальше выбор простой: тариф Pro, если бот нужен в работе постоянно, или сайт — сайты на бесплатном тарифе живут сколько угодно. Оплата российской картой или через СБП, поддержка на русском. Попробовать Netrun.