2016-04-01 29 views
0

我有两个问题。我已经部署了一个烧瓶应用程序heroku,一切工作正常。我是否需要取消对app.run(debug=True)线在我app.py文件:在Heroku服务器上启动加载文件?

# Run App 
if __name__ == "__main__": 
    app.run(debug=True) 

这里是我的procfile:

web: gunicorn -w 4 -b 0.0.0.0:$PORT -k gevent app:app 

我假设的Heroku忽略了一个在app.py文件,但我不当然。我的第二个问题是,我正在加载一个模型,并需要运行以下行 classifier = job lib.load('myClassifier.pkl'),但我不知道在哪里放置它。我希望能够从我的烧瓶应用文件app.py访问classifier对象。谢谢!

回答

0

您无需取消注释app.run(debug=True)。在Procfile中你可以看到app:app。这意味着gunicorn将从app文件导入app WSGI对象并运行它。

如果你想在部署后运行一个任务,Heroku提供了钩子。 https://devcenter.heroku.com/articles/deploy-hooks

+0

谢谢jumbopap。但我不确定钩子是否是我所追求的。我基本上想要从加载的文件中定义一个变量。现在我在'app.run(debug = True)'之前定义它,但是不确定这个部署是否可以部署。或者最好的地方去做。 – KingPolygon

相关问题