/ / GunicornでvirtualenvからDjangoプロジェクトを実行する> = 19 - django、virtualenv、gunicorn

GunicornでvirtualenvからDjangoプロジェクトを実行する> = 19 - django、virtualenv、gunicorn

私はニュースを見た docs.gunicorn.org ガンコンv.19のために:

廃止

run_gunicorn、gunicorn_django、gunicorn_pasterが完全になりました 廃止され、次のリリースで削除されます。ガンコンを使う 代わりにコマンド。

仮想環境から私のアプリケーションを実行します。仮想環境で作成されたアプリケーションは、スーパーバイザで次のコマンドで実行されます。

[program:my_app]
command=/var/www/.virtualenvs/my_app/bin/gunicorn_django -c /var/www/my_app/conf/gunicorn.conf.py

user=www-data
group=www-data

daemon=false
debug=false

autostart=true
autorestart=true

redirect_stderr=true
stdout_logfile=/var/www/my_app/log/supervisor.log

新しいバージョンのgunicornでプロジェクトを実行するために設定を変更するにはどうすればよいですか?

回答:

回答№1は1

コマンドラインを次のように変更する必要があります

command=/var/www/.virtualenvs/my_app/bin/gunicorn my_app.wsgi:application -c /var/www/my_app/conf/gunicorn.conf.py

これはあなたがファイルを持っていると仮定していますmy_app / wsgi.py。 Django 1.4以降、startprojectはプロジェクトの一部としてあなたのためにwsgi.pyファイルを生成しました。私はあなたがこれを持っていると仮定しますが、もしそうでなければ、次のスニペットを使ってそのファイルを作成することができます。

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "my_app.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

見る https://docs.djangoproject.com/en/1.6/howto/deployment/wsgi/

my_appディレクトリがPYTHONPATHに存在していない場合は、そのディレクトリにPYTHONPATHが含まれていることを確認する必要があります。そうしないと、エラーが発生します。

これを新しいdjangoプロジェクトでコマンドラインでスタンドアロンでテストするには、djangoとgunicornがすでにあなたの環境にインストールされていると仮定して、以下のことが動作するはずです。

django-admin.py startproject myproject
cd myproject
export PYTHONPATH=$PYTHONPATH:.
gunicorn myproject.wsgi:application -b localhost:8008