使用gunicorn和nginx,Supervisor部署Django项目

uwsgi部署django怎一个蛋疼了得啊.配置好久都没有成功.照着官方文档做还各种错误.烦死了简直.Google的时候发现了gunicorn,看了下文档.天呐,感觉我的天空星星都亮了~~~

gunicorn可以很方便的配置django项目.配合Supervisor可以很简单的解决.下面介绍下.

首先,需要安装.这个很简单.直接pip安装下就好了 pip install gunicorn ubuntu安装supervisor使用下面命令 sudo apt-get install supervisor

安装完成之后,就可以在django项目目录中执行 gunicorn projectname.wsgi -b 127.0.0.1:22223 这样,就可以在浏览器里面访问到你的django项目 接下来配置supervisor 安装supervisor之后,在/etc/supervisor目录中存放着supervisor的配置文件:其中conf.d是一个子目录,其中存放着supervisor监管的进程的配置信息,一个进程有一个对应的配置文件;supervisord.conf是supervisor的主配置文件,定义服务名称以及接口等等. 我们在/etc/supervisor/conf.d中创建一个配置文件来执行

[program:tools]
directory= /path/to/project
command = /usr/local/bin/gunicorn projectname.wsgi -b 127.0.0.1:8000
user = root
autostart=true
autorestart=true

redirect_stderr = true
stdout_logfile = /root/logs/tools/robot.log
stderr_logfile=/root/logs/tools/err.log  

保存之后执行supervisorctl update使新配置生效.或者用supervisorctl reload重新重新启动supervisor程序 下面就是配置nginx.简单的贴下

server {
    server_name xxx;
    root /path/to/project;

    access_log off;

    location ~* ^.+.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js)$ {
        expires max;
    }

    # Dynamic content
    location / {
        proxy_pass_header Server;
        proxy_redirect off;
        proxy_pass http://127.0.0.1:8000;
    }

}

至此全部完成.怎么样,简单吧~~~

发表评论

电子邮件地址不会被公开。 必填项已用*标注