Heroku - нет запущенного веб-процесса

Я сделал бот twitter, используя tweepy в Python и попытался развернуть его с помощью Heroku. Бот просто чирикает через определенные промежутки времени. После его развертывания программа Python просто не запускается, и журнал Heroku показывает следующую ошибку:

at=error code=H14 desc="No web processes running" method=GET path="/favicon.ico" host=fathomless-island-25537.herokuapp.com request_id=0aa76d12-31e6-4940-85ec-a8476af4f82f fwd="182.64.210.145" dyno= connect= service= status=503 bytes=

после просмотра некоторых подобных проблем, где приложение django должно быть развернуто, я попытался:

heroku ps:scale web=1

и у:

Scaling dynos... !
 !  Couldn't find that formation.

означает ли это, что программе не удалось установить веб-процесс или есть что-то еще связанное с диносом ? Или если мне нужно включить в свою программу код, связанный с dynos ? Я не знаю, в какой части этого процесса есть проблема. Извините, если это слишком просто.

1 ответов


вопрос немного старше, но все равно...

прежде чем вы сможете масштабировать dynos, вам нужно иметь Procfile, где вы определяете, что должно произойти при запуске процесса. В вашем случае процесс должен называться web. Мы придем к содержанию файла через минуту.

но сначала: мне кажется, лучше использовать gunicorn для запуска приложений python на heroku, поэтому сначала вы должны установить gunicorn, run pip freeze > requirements.txt и нажмите его на heroku (Ну, подождите с этим пока у вас нет Procfile). Подробнее: питон с gunicorn на heroku

Procfile требуется только одна строка web: gunicorn <filename>:<main method name>. В вашем случае это будет (при условии, что ваш основной метод называется "app")web: gunicorn bot:app.

теперь нажмите все это на heroku, затем вы можете масштабировать свой dyno с помощью команды, которую вы использовали heroku ps:scale web=1