supervisor的控制uwsgi+Nginx启动Django项目

项目部署,环境准备

1.python3虚拟环境准备

2.安装uwsgi
pip3 install uwsgi 


3.通过uwsgi启动django项目

    1.进入项目的第一层
    cd  mydjango118 
    2.执行命令启动django
    uwsgi --http  :8000 --module  mydjango118.wsgi
    
4.热加载uwsgi 命令如下
uwsgi --http :8088 --module mysite.wsgi --py-autoreload=1 

5.通过配置文件,启动uwsgi
这个文件叫做 uwsgi.ini 

#手动创建这个配置文件,写入如下信息

[uwsgi]
# Django-related settings
# the base directory (full path)
#这里写入项目的绝对路径
chdir           = /opt/mydjango118
# Django's wsgi file
#写入django的第二层文件夹,和wsgi.py文件
module          = mydjango118.wsgi
# the virtualenv (full path)
#虚拟环境的绝对路径
home            = /root/Envs/myuwsgi
# process-related settings
# master
master          = true
# maximum number of worker processes
processes       = 5
#如果你没用nginx,想直接访问django后台,可以使用http协议
#http = 0.0.0.0:8000
#如果你用了nginx进行反向代理,请使用socket协议,注释掉http协议
#如果你用了nginx进行反向代理,请使用socket协议,注释掉http协议
#如果你用了nginx进行反向代理,请使用socket协议,注释掉http协议
socket          = 0.0.0.0:8000


# ... with appropriate permissions - may be needed
# chmod-socket    = 664
# clear environment on exit
vacuum          = true

6.nginx结合uwsgi 启动
    1.修改nginx配置 nginx.conf如下
            #是nginx进行反向代理
         

  location / {
                include  uwsgi_params;
                uwsgi_pass 0.0.0.0:8000;
            }
            #http://192.168.11.250/static/admin/css/base.css
            #当请求url,从static路径开始时,我们就让他去找某一个文件夹
            #解决静态文件的配置方式
            
            location  /static {
                alias /opt/aceCrmStatic;
            }

    2.修改django的settings.py,收集静态资源 
        1.修改settings.py如下
           

 STATIC_ROOT="/opt/aceCrmStatic"
            STATIC_URL = '/static/'
            STATICFILES_DIRS = [
            os.path.join(BASE_DIR, 'static')
        ]


    3.使用命令收集django的静态文件
    (在项目文件加下执行)python3 manage.py  collectstatic 
    
    
    4.此时静态页面配置完毕
    
#使用supervisro启动uwsgi,退出虚拟环境, 使用物理环境的python2去安装
1.安装supervisor
yum install python-setuptools
easy_install supervisor


2。安装完毕后,生成配置文件
 /etc/supervisord.conf
3.在配置文件中,添加任务,管理uwsgi

vim /etc/supervisord.conf #在最底行,写入配置如下

[program:s17uwsgi]
command=/root/Envs/myuwsgi/bin/uwsgi   --ini  /opt/mydjango118/uwsgi.ini # 两个绝对路径,根据自己的情况具体修改
stopasgroup=true      
killasgroup=true 

4.启动supervisor服务

supervisord -c  /etc/supervisord.conf 


5.通过命令管理任务,管理uwsgui

supervisorctl -c /etc/supervisord.conf

6。学习管理supervisor的命令

start 任务名
stop 任务名
stop all 
start all 
status 任务名 

posted @ 2019-03-13 20:43  一只程序猿呀  阅读(558)  评论(0编辑  收藏  举报