2016-08-31 2 views
9

Я сделал твиттер-бот, используя tweepy в Python, и попробовал развернуть его с помощью Heroku. Бот просто чириканье через определенные промежутки времени. После развертывания это программа Python просто не запускается, и журнал Heroku показывает следующее сообщение об ошибке: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= 

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

heroku ps:scale web=1 

и получил:

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

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

+0

Вы можете оставить PROCFILE? –

+1

@ MichałMłoźniak; Procfile говорит «worker: python bot.py» –

+0

Итак, вы должны, вероятно, выполнить 'heroku ps: scale worker = 1' –

ответ

3

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

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

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

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

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