将 django 2.0 部署到 heroku 时出错

error deploying django 2.0 to heroku

我已经创建了我的第一个 Django 2.0 项目并尝试将其部署到 Heroku

我已经设置好了,所有的推拉都很顺利。

但是当我使用

访问我的应用程序端点时
https://jotitdown.herokuapp.com

未加载,heroku logs 出现此错误

2017-12-23T07:04:45.333450+00:00 heroku[router]: 
at=error code=H10 desc="App crashed" method=GET path="/" 
host=jotitdown.herokuapp.com request_id=cd2a9bb6-fae8-4317-af39-b271c1d74af5 
fwd="45.115.107.34" dyno= connect= service= status=503 bytes= protocol=https

我在settings.py里设置了这个,这里`

DEBUG = True

ALLOWED_HOSTS = ['*', 'jotitdown.herokuapp.com', '*.herokuapp.com']

Profile

web: gunicorn notepad.wsgi --log-file -

我尝试 运行 在本地使用

heroku local web

它给出的错误为

[WARN] No ENV file found
web.1   |  /bin/sh: gunicorn: command not found
web.1   Exited with exit code 127

Gunicorn 不是由 Heroku 自动提供的。您的本地副本显然丢失了它,我怀疑它在 Heroku 上也丢失了。

将其添加到您的 requirements.txt 并在本地安装,然后再次使用 heroku local 进行测试。假设可行,将更改提交到 requirements.txt 并再次推送到 Heroku。

通过删除所有已安装的软件包并使用 Pipenv 重新安装它们来解决。

要启动 Heroku 本地网络,如果您使用 pipenv 的虚拟环境,您需要 运行 以下命令。

pipenv run heroku local web

这个答案可能会对使用 pipenv 的人有所帮助。