• Django项目部署


    crm项目部署流程笔记

    1.创建一个新的虚拟环境,用于运行crm新业务

    mkvirtualenv crm
    

    2.解决代码的模块依赖

    pip3 freeze >  requirements.txt 
    
    pip3 install -i https://pypi.douban.com/simple  -r requirements.txt 
    

    3.安装uwsgi工具,启动crm

    pip3 install -i https://pypi.douban.com/simple uwsgi 
    
    • 查看uwsgi的版本:

      uwsgi --version
      
      (crm) [root@zfy1 code]# uwsgi --version
      2.0.18
      

    4.使用uwsgi的配置文件,启动crm项目

    • 手动创建uwsgi的配置文件
    # 首先是创建名为 uwsgi.ini 的配置文件
    touch uwsgi.ini  
    
    • 下边是文件配置内容:
    [uwsgi]
    # 填写项目的完整绝对路径,第一层
    chdir = /code/crm_zfy
    
    #指定django的wsgi文件路径,填写相对路径
    module = crm_zfy.wsgi 
    
    #填写虚拟环境的绝对路径
    home = /root/Envs/crm
    
    master = true
    
    #定义程序的多进程数量的,以cpu核数的2倍+1数量填写   2n+1 数量 
    processes = 9
    
    #把uwsgi启动在socket协议上,的8000端口
    socket = 0.0.0.0:8000
        
    #指定http协议的话,用户是可以直接访问到的,不安全的,因此使用socket协议
    #http =0.0.0.0:8000
    vacuum  = true
    

    5.启动uwsgi的命令

    uwsgi --ini  uwsgi.ini    # 指定配置文件启动 
    

    6.配置nginx,进行静态文件解析,以及反向代理crm的动态请求

      server {
            listen       80;   
            server_name  _;
            #只要在server{}标签中看到root关键字,说明这个虚拟主机是一个静态文件服务器
            #将www.s24pythoncrm.com 这个域名所有的请求,都分发给uwsgi
            location / {
            uwsgi_pass  127.0.0.1:8000;
            include uwsgi_params;
            }
        }
    

    重新加载nginx,让配置生效

    nginx -s reload        # 平滑启动
    
    

    7.把ip做一个本地的hosts解析,添加一个假的域名(线上部署不需要执行,只限在虚拟机上练习使用)

    # 找到本地机器的hosts文件C:WindowsSystem32driversetc
    192.168.16.85  www.s24pythoncrm.com  
    
    

    8.收集crm所有的静态文件,交给nginx去处理

    # 修改django的settings.py配置文件,添加如下配置
    STATIC_URL = '/static/'
    STATIC_ROOT='/opt/s24crmstatic'  
    
    # 通过命令收集django所有的静态文件
    python3  manage.py collectstatic
    
    

    9.配置nginx找到crm的静态文件

    # 修改配置如下形式
    # 配置nginx找到crm所有的静态文件
    # 只要是以/static开头的请求,就走如下配置
    location  /static {
        alias  /opt/s24crmstatic/;
    }
    
    

    10.重启nginx,查看crm项目

    systemctl restart nginx
    
    

    11.通过supervisor进程管理工具,管理uwsgi的后台,这个工具,其实就是在帮我们执行启动命令

    # 需要下载安装即可 
    yum install supervisor
    
    

    12.配置supervisor的配置文件

    • 通过命令生成supervisor的配置文件
    echo_supervisord_conf > /etc/supervisord.conf
    
    # 修改配置文件,加载crm项目
    [program:s24crm]
    command=/root/Envs/s24crm/bin/uwsgi --ini  /s24fuxi/IGnb/uwsgi.ini     ; 程序启动命令
    autostart=true       ; 在supervisord启动的时候也自动启动
    stopasgroup=true     ;默认为false,进程被杀死时,是否向这个进程组发送stop信号,包括子进程
    killasgroup=true     ;默认为false,向进程组发送kill信号,包括子进程
    

    13.启动supervisord服务端

    supervisord -c  /etc/supervisord.conf 
    
    # 进入supervisor的管理交互式终端,管理任务
    [root@s24_linux css]# supervisorctl -c /etc/supervisord.conf 
    s24crm                           RUNNING   pid 39763, uptime 0:00:06
    

    14.supervisor的管理命令

    status #查看状态
    start all #启动所有任务
    restart all #重启所有任务
    
  • 相关阅读:
    POJ 2136
    POJ 2121
    POJ 2127
    POJ 2126
    POJ 2109
    POJ 2105
    POJ 2101
    POJ 2075
    Uboot — 配置过程
    Uboot — 编译体验
  • 原文地址:https://www.cnblogs.com/zhufanyu/p/12075203.html
Copyright © 2020-2023  润新知