GunicornでDjangoのプロジェクトを起動してみる


環境はAWS、Django 1.8、gunicorn 19.3.0

How to use Django with Gunicorn | Django documentation | Django
を参考に、GunicornでDjangoのプロジェクトを起動してみる。

まず、Djangoのプロジェクトを作成。
django-admin.py startproject projectname
migrateしておく(adminの管理画面を見るため)。
cd projectname
python3 manage.py migrate

で、gunicornのコマンドで動かしてみる。
$ gunicorn projectname.wsgi
[2015-05-09 08:38:17 +0000] [13137] [INFO] Starting gunicorn 19.3.0
[2015-05-09 08:38:17 +0000] [13137] [INFO] Listening at: http://127.0.0.1:8000 (13137)
[2015-05-09 08:38:17 +0000] [13137] [INFO] Using worker: sync
[2015-05-09 08:38:17 +0000] [13140] [INFO] Booting worker with pid: 13140

ローカルだとすぐに確かめられるけど、AWSのサーバ上での起動だと、すぐには難しいので、起動方法を変更。

$ gunicorn projectname.wsgi -b AWSのパブリックDNS:8000
[2015-05-09 08:41:30 +0000] [13146] [INFO] Starting gunicorn 19.3.0
[2015-05-09 08:41:30 +0000] [13146] [INFO] Listening at: http://172.31.8.185:8000 (13146)
[2015-05-09 08:41:30 +0000] [13146] [INFO] Using worker: sync
[2015-05-09 08:41:30 +0000] [13149] [INFO] Booting worker with pid: 13149

で、AWSのパブリックDNS:8000にブラウザでアクセスすると、Djnagoは起動しているみたい。
スクリーンショット 2015-05-09 17.42.04

ただ、adminの画面はレイアウトが崩れている。
スクリーンショット 2015-05-09 17.43.51

他にもいろいろと設定しないとダメかも。

・リンクメモ
How to use Django with Gunicorn | Django documentation | Django
Gunicorn – WSGI server — Gunicorn 19.3.0 documentation
Django | saito’s memo
サーバー — Django Best Practices
Gunicorn — Django Cheat 1 documentation
Django で gunicorn の起動と停止のメモ – 牌語備忘録 -pygo
Web Server Gateway Interface – Wikipedia
PythonでつくるWebアプリ/Tornado + Gunicorn + Nginx | ninxit.blog