コンテキスト: 私は中型のフラスコアプリケーション(10〜15ビュー)を作成しています。その過程で、コードを簡単に保守および拡張できるように整理したいと考えています(ほとんどのFlaskアプリケーションのようにモノリシックファイルではありません)。 )。
アプリケーションの構造は、次のようにドキュメントを模倣しています。
/AwesomeHackings
/ENV
/AwesomeHackings
/models
/static
/templates
/__init__.py
/awesome.py
/awesome.cfg
/Procfile
/README.MD
/requirements.txt
/run.py
問題: 「app」という名前ではないフラスコアプリケーションでフォアマンを動作させることができません。run.pyをアプリケーションへのエントリポイントにしたいと思います。
私はgunicorn+geventを使用していますが、現在のProcfileには次のものが含まれています。
web: gunicorn -w 2 -b 0.0.0.0:$PORT -k gevent app:run
私はrun.py
アプリケーションをテストするために使用しています:
from AwesomeHackings import awesome
awesome.app.run(debug=True)
したがって、Procfileで単純に置き換えることができると思いrun
ましapp
たが、実行するforeman start
と、gunicornはモジュールに関する無意味な言い回しで失敗します。