/ / Gunicorn / WSGIウェブサーバーでDjangoアプリを起動するにはどうすればいいですか? - django、wsgi、gunicorn、django-cache-machine

Gunicorn / WSGI WebサーバーでDjangoアプリケーションを実行するには? - django、wsgi、gunicorn、django-cache-machine

既存のDjangoアプリケーションを自分のMacBook上でローカルに実行しています。ディレクトリ構造は次のようになります。

myproject/
mySite/
__init__.py
settings.py
urls.py
wsgi.py
myApp1/
__init__.py
models.py
views.py
manage.py
requirements.txt

これまで、私は自分のアプリを実行するためにDjangoトイWebサーバーを使用してきました。 ./manage.py runserver 0.0.0.0:8000。しかし今は代わりにgunicornを使いたいと思います。だから私は指示に従っている」 ここに.

私がやります source myVirtualenv/bin/activate && cd myproject && gunicorn mySite.wsgi。次のエラーが表示されます。

  File "/usr/local/Cellar/python/2.7.12_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "myproject/MyApp2/models.py", line 11, in <module>
from caching.base import CachingManager, CachingMixin
ImportError: No module named caching.base

私が走るとき ./manage.py runserver 0.0.0.0:8000 同じ場所からそれは完璧に動作します。

どうして?私は何か悪いことをしていますか? Django-Cache-MachineはGunicorn / WSGIでは動作しませんか?この問題を回避する方法

回答:

回答№1は1

グローバルにgunicornをインストールしたようですそのため、実行可能ファイルはvirtualenv内ではなく、グローバルPythonとそのsite-packagesディレクトリを指しています。 gunicornをローカルに再インストールしてください。


回答№2については2

gunicornを使ってプロジェクトを実行するには、次のことを試してください。

  1. あなたのvirtualenvを起動してください
  2. プロジェクトのディレクトリに移動します
  3. 走る gunicorn mySite.wsgi:application --bind 127.0.0.1:8000

コマンドがうまく機能すれば、私よりあなたはセットアップされています。それ以外の場合は、次のチュートリアルを試してください。プロダクション用の新しいプロジェクトをセットアップするときは、常にこのチュートリアルを自分で使います。それを試してみてください。 Nginx、Gunicorn、SupervisorでDjangoを設定する