我正在尝试使用Flask和Gunicorn在Heroku上启动服务器。我有一个配置文件,我都尝试使用echo "web: gunicorn annallAPI:app" > Procfile
创建并在vs code中添加一行到Procfile。但每次我得到:
remote: -----> Discovering process types remote: Procfile declares types -> (none)
我看到问题指向错误的名称,f.x.如果它是ProcFile和另一个指向不正确的编码,说它需要是UTF-8。我有正确的名称,我不能转换为UTF-8,因为original_charset有UTF-8。
构建成功,然后如果我向服务器发出请求,它当然会失败。声明一下,我用的是M1 Mac。我在Heroku日志中得到的错误是:
at=error code=H14 desc="No web processes running" method=GET path="/" host=xxx-api.herokuapp.com request_id=65f19b67-87a1-46bf-84f4-20f4ab36e85b fwd="130.208.240.12" dyno= connect= service= status=503 bytes= protocol=https
我试着做heroku ps:scale web=1
启动一个web进程,我认为如果配置文件没有设置web进程,就不应该工作。它给了我错误:
Scaling dynos... ! ▸ Couldn't find that process type (web).
-
确保您已经创建了
requirements.txt
,其中列出了包括gunicorn
在内的所有库 -
Create Procfile -这个文件基本上没有扩展名,包含web:
编辑它。gunicorn yourwsginame:app
我个人建议您手动创建这个文件,然后使用文本编辑器