Выгрузка Telegram-бота, написанного на Python, на удалённый сервер Heroku. Heroku — платный сервис, требующий оплату (на момент написания — 7 долларов в месяц). Альтернатив с аналогичными бесплатными возможностями практически нет.
Подготовка
Перед выгрузкой:
- Регистрация на Heroku: Зарегистрируйтесь или авторизуйтесь на сайте Heroku ([ссылка на сайт опущена]).
- Создание приложения: Создайте приложение, указав название (например, «TelegramBot_ITProger») и регион (рекомендуется Европа).
- Установка Heroku CLI: Установите Heroku CLI. Инструкции — на сайте Heroku.
- Установка Git: Установите Git с официального сайта ([ссылка на сайт опущена]), если он не установлен.
Настройка проекта
- Файл Procfile: Создайте файл Procfile (с большой буквы «P») без расширения. В нём укажите команду запуска бота:
worker: python main.py
где main.py — имя основного файла бота.
- Файл requirements.txt: В терминале выполните:
pip freeze > requirements.txt
Эта команда создаст файл requirements.txt со всеми зависимостями проекта. Изменения в нём рекомендуется вносить только при уверенности в избыточности библиотеки.
Выгрузка на Heroku
- Инициализация Git: В директории проекта выполните:
git init
- Добавление файлов:
git add .
- Фиксация изменений:
git commit -m "All files initial commit"
- Авторизация в Heroku:
heroku login
Следуйте инструкциям для авторизации через браузер.
- Подключение к удалённому репозиторию:
heroku git:remote -a <имя_вашего_приложения>
Замените <имя_вашего_приложения> на имя вашего приложения Heroku.
- Выгрузка проекта:
git push heroku master
Эта команда загрузит проект на сервер Heroku.
Запуск и настройка воркера
После выгрузки бот не будет работать. Для запуска настройте воркер:
- Запуск воркера:
heroku ps:scale worker=1
Эта команда запустит один воркер. 0 остановит воркер.
- Оплата: Для работы бота необходима оплата (7 долларов в месяц, цена может измениться). Добавьте данные банковской карты в настройки Heroku.