在工作时服务器上环境的搭建,做个笔记记录。用到的东西主要有:django,nginx,supervisor,Gunicorn,virtualenv,mysql。

安装就略过了,每一个的文档上有介绍。virtualenv有一个virtualenvwrapper方便操作。

先安装virtualenv,然后在python虚拟环境里边安装django,gunicorn等相关库。

supervisor用来守护django网站启动的进程,默认配置文件添加/etc/supervisor/conf.d/name.conf

[program:code]
command=/home/sys/.virtualenvs/%(program_name)s/bin/gunicorn %(program_name)s.wsgi:application -c /home/www/%(program_name)s/%(program_name)s/gunicorn.conf.py
user=hg
directory=/home/www/%(program_name)s
autostart=true
autorestart=true
redirect_stderr=True

gunicorn.conf.py就是启动django的一些参数,制定监听的端口bind = "127.0.0.1:9006"。然后在nginx配置文件里边,进行转发。
server {
listen        80;
set $name "code";

server_name  code.xx.com;

root   /home/www/${name}/root;
access_log  /var/log/nginx/${name}.access.log;

location ~ (\.hg|\.orig|\.bak) {
deny all;
}

location /static/ {
expires max;
access_log off;
alias /home/www/${name}/static/;
}

location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass   http://127.0.0.1:9006;
}
}


supervisor的一些命令:

修改配置文件以后要使用supervisorctl update命令,否则不会更新。刚开始的时候,捣鼓了好长时间 才知道要这样搞0 0.
supervisorctl start all启动所有进程,

supervisorctl start code 单独启动code进程。
使用supervisorctl可以进入管理程序。

上一篇:
下一篇:

相关文章:

Categories: 博客记录

0 Responses so far.

Leave a Reply