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