2016-04-01 6 views
0

私には2つの質問があります。私はherokuにフラスコアプリケーションを配備し、すべてが正しく機能しています。私は私のapp.pyファイルにapp.run(debug=True)行のコメントを解除する必要があります:ここで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ファイル内の1を無視すると仮定していますが、私はありませんよ確かに。私の2番目の質問は、私はモデルをロードして、次の行を実行する必要があるということです。 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

ありがとうございます。しかし、フックが私の後ろであるかどうかは分かりません。基本的には、ロードされたファイルから変数を定義する必要があります。今は 'app.run(debug = True)'の前に定義していますが、一度デプロイすると動作するかどうかはわかりません。それとも最高の場所であるのか。 – KingPolygon

関連する問題