Python+Django+nginx+Linux+gunicorn部署

5 篇文章 0 订阅
3 篇文章 0 订阅

初次部署Django project in ubuntu server

Init env:

python -V  2.7.3

Django 1.6

Linux   ubuntu

 

Steps:

  • install nginx 
  • install gunicorn      sudo apt-get install gunicorn
  • create django project    django-admin.py startproject demos
  • test gunicorn is useful     cd demos && gunicorn demos.wsgi:application --bind 0.0.0.0:9090
  • config nginx for demos

 

upstream demos {
     server 127.0.0.1:9090 fail_timeout=0;
     #server unix:/var/www/demos/run/gunicorn.sock
}

server {

    listen 8000;
    access_log /var/log/nginx/access.log;
    error_log  /var/log/nginx/error.log;
    root /var/www/demos;
    server xxxx.com;
    
    location / {
         proxy_pass http://demos;
    }

    location /static {
             .....
    }

    error_page 404 500 504 /404.html;
    location = /404.html {
        root html;
    }
}

 

 

测试页面   http://127.0.0.0:8000   ,see "Congratulations on your first Django-powered page."    successfully

 

  • run gunicorn process backend, using supervisor
  • sudo apt-get install supervisor
  • config supervisor
  • config shell script for gunicorn
#!/bin/bash

name="demos"
project_dir=/var/www/demos
sockfile=/var/www/demos/run/gunicorn.sock
address=0.0.0.0
port=9090
num_wks=3
dj_setting_module=demos.settings
dj_wsgi_module=demos.wsgi

echo "Starting $name as `whoami`"

rundir=$(dirname $sockfile)
test -d $rundir || mkdir -p $rundir

exec gunicorn ${dj_wsgi_module}:application \
--workers $num_wks \
--log-level=debug \
--bind=$address:$port
#--bind=unix:$sockfile
  •  update supervisor.conf

 

[program:demos]
command = /var/www/demos/run/runserver.sh 
stdout_logfile = /var/www/demos/logs/gunicorn_supervisor.log
redirect_stderr = true  

 

  •  start supervisorctl demos

 

Refs:

http://ijcdigital.com/blog/django-gunicorn-and-nginx-setup

http://michal.karzynski.pl/blog/2013/06/09/django-nginx-gunicorn-virtualenv-supervisor/

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值