Страницы

Поиск по вопросам

суббота, 1 февраля 2020 г.

Деплой бота на сервере Heroku

#python #python_3x #heroku


Может кто--нибудь дать инструкцию, как развернуть бота на сервере heroku (написанном
на python)? Спасибо заранее.
    


Ответы

Ответ 1



Первым делом создайте Git репозиторий в папке с ботом: git init Войдите в аккаунт Heroku: heroku login Создайте приложение: heroku create appname --region eu Создайте файл Procfile с содержимым: bot: python main.py Если бот на веб-хуках, замените bot на web. Но на бесплатном тарифе, бот будет засыпать каждые 30 минут если не будет подключений, по этому на Heroku free лучше держать ботов на лонг-поллинге. Но проблема с засыпанием веб приложения решается с помощью http://kaffeine.herokuapp.com/. Теперь нужно упаковать все зависимости проекта: pip freeze > requirements.txt Теперь наша папка выглядит приблизительно так: Procfile main.py requirements.txt Коммитим изменения: git add . затем git commit -m 'commit' Пушим на Heroku: git push heroku master Запускаем бота: heroku ps:scale bot=1 Смотрим логи: heroku logs -t На этом всё.

Ответ 2



В папке с проектом должны быть такие 3 файла: Proc web: python bot.py requirements.txt pyTelegramBotAPI==3.6.6 heroku==0.1.4 + другие модули (сгенерировать этот файл можно так: pip freeze > requirements.txt) runtime.txt python-3.7.0 или другая версия python Из папки, где находится проект, запускаете такие команды: git init git add . git commit -m "My first commit" heroku create git push heroku master Дополнительно рекомендую установить токен как переменную: heroku config:set TOKEN=7593654323:AAlkjHjhDZiWUD7Th4Dl_uPlkjpdorpoHGhgdsPVjQ (также можно установить переменные и на сайте Хероку) и обращаться к ней из программы import os os.environ['TOKEN'])

Комментариев нет:

Отправить комментарий