Загрузка проекта Django на сервер Heroku - PullRequest
0 голосов
/ 15 мая 2019

Я загрузил свой проект Django в Heroku, и я получаю это сообщение об ошибке в браузере, как показано на скриншоте

enter image description here

Но когда я проверяюВойдите в систему администратора. Я вижу это сообщение ниже:

2019-05-14T21: 26: 26.138333 + 00: 00 app [web.1]: bash: gunicorn: команда не найдена

Но gunicorn включен в мой requirements.txt файл:

dj-database-url==0.5.0
Django==2.2.1
django-heroku==0.3.1
gunicorn==19.9.0
psycopg2==2.8.2
pytz==2019.1
sqlparse==0.3.0
whitenoise==4.1.2

У меня также есть Pipfile и Pipfile.lock.

Почему не может Herokuнайти gunicorn?

1 Ответ

0 голосов
/ 16 мая 2019

Вообще говоря, вы должны использовать или requirements.txt или Pipfile и Pipfile.lock.Они примерно одинаковы, но работают с разными инструментами.

Pipfile и Pipfile.lock - более новый стандарт.Если они присутствуют, Heroku устанавливает зависимости, используя Pipenv . В этом случае файл requirements.txt игнорируется.

Вам следует либо

  1. Выбрать использовать Pipenv.

    1. Ваши требования, возможно, уже перечислены в Pipfile и Pipfile.lock, но для правильного запуска pipenv install -r requirements.txt локально.
    2. Удалите requirements.txt с git rm requirements.txt.
    3. Подтвердите это изменение, например git commit -m 'Switch from pip to Pipenv'.
    4. Нажмите на Heroku.
  2. Выберите использование pip.

    1. Прочитайте свой Pipfile, чтобы увидеть, есть ли там что-нибудь, что вам может понадобиться.Этот файл делает больше, чем просто список зависимостей.

      Например, ваш Pipfile может указывать требуемую версию Python, например python_version = '3.7', в разделе [requires].Это не может быть представлено в requirements.txt, поэтому вам нужно создать runtime.txt файл , чтобы указать версию Python.

      Возможно, вы также захотите создать вторые требованияфайл для зависимостей разработки.

    2. Удалите Pipfile и Pipfile.lock с помощью git rm Pipfile Pipfile.lock.

    3. Commit, например, git commit -m 'Revert from Pipenv to pip.

    4. Нажмите на Heroku.

...