Подтвердить что ты не робот

Heroku procfile "Нет такого типа процесса в сети, определенный в Procfile"

Это первый раз, когда я использовал Heroku, и тот факт, что я не могу найти кого-либо в Google с аналогичной ошибкой, означает, что я, вероятно, делаю что-то способ неправильно

Я следую базовому руководству по установке Heroku здесь, чтобы получить приложение NodeJS, развернутое в Интернете. Я развернута и пытаюсь проверить свой dynos на:

heroku ps:scale web=1

Однако, когда я это делаю, я получаю ошибку:

Scaling web dynos... failed
 !    No such process type web defined in Procfile.

Когда я запускаю heroku ps, я ничего не получаю.

В моем корневом каталоге приложения у меня есть файл с именем Procfile (без расширения), который содержит:

web: node app.js

Приложение запускается локально без каких-либо проблем (используя foreman start).

Вопрос, почему это происходит, как мне его исправить, должен ли я даже заботиться?

4b9b3361

Ответ 1

Процессы, которые будут выполняться на Heroku, определяются в простом текстовом файле: Procfile

Профиль содержит строку, определяющую, как будет работать каждый из процессов в вашем приложении. Это будет специфичным для языка, и примеры можно увидеть в статье Heroku Devcenter Procfile

Обратите внимание, что файл Procfile должен быть указан точно, а первая буква заглавны всем другим нижним регистром. Для файла Procfile нет расширения файла. Этот файл Procfile должен быть помещен в корень вашего проекта и передан в локальный репозиторий git перед выполнением мастера git push heroku.

Если вы неправильно напечатали имя файла после его добавления в git, вы можете переименовать его с помощью git с помощью команды

git mv ProcFile Procfile

Переименованный файл будет поставлен таким образом, чтобы вы могли зафиксировать измененный файл командой

git commit -m "corrected name of Procfile"

Ответ 2

Я нашел решение самостоятельно, отсюда: fooobar.com/questions/291361/...

У меня была такая же проблема, и я только сейчас обнаружил, что не так. я первый случайно вызвал файл ProcFile вместо Procfile. Просто переименование этого файла не удалось получить с помощью git. Мне нужно было сделать git rm Сначала запустите ProcFile -f, а затем добавьте новый (правильно названный) Procfile. После что он был правильно настроен на git и правильно поднят Heroku.

Ответ 3

У меня была сама проблема, но в моем случае у меня отсутствовало пробел между web: и стартовой командой в Procfile.

Например, у меня было это неправильно:

web:gunicorn run:app

Исправлено, добавив пробел после двоеточия:

web: gunicorn run:app

Ответ 4

Я предполагаю, что вы никогда не делали git push heroku master - то есть, Heroku никогда не видел ваш код.