• linux部署django项目流程(全)


    1.python3和python2共存配置

    流程在下面网址中

    https://www.cnblogs.com/vinic-xxm/p/11358894.html

    2.安装依赖包

    yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make -y
    

    3.导出django开发环境清单

    pip freeze > packet.txt
    

    4.在linux环境中批量安装清单环境包

    pip3 install -r packer.txt
    

    5.将完整的django项目上传到linux系统中

    6.项目测试,关闭防火墙

    systemctl stop firewalld
    

    运行项目观察是否正常运行

    7.安装配置uwsgi

    pip3 install uwsgi
    

    创建软连接
    ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

    8测试uwsgi环境

    uwsgi --http 10.10.14.180:80 --file 项目名/wsgi.py --static-map=/static=static
    

    9配置uwsgi配置文件

    mkdir script
    vim uwsgi.ini
    
    [uwsgi]
    chdir=/opt/OurBlog   #项目目录
    module=OurBlog.wsgi:application  #指定项目的application
    socket=/opt/script/uwsgi.sock  #指定sock的文件路径
    workers=5  #进程个数
    pidfile=/opt/script/uwsgi.pid
    http=192.168.2.69:8000  #指定IP端口
    static-map=/static=/opt/OurBlog/static  #指定静态文件
    uid=root  #用户
    gid=root  #组
    master=true  #启用主进程
    vacuum=true  #自动移除unix Socket和pid文件当服务停止的时候
    enable-threads=true #启用线程
    thunder-lock=true #序列化接受的内容,如果可能的话
    harakiri=30 #设置自中断时间
    post-buffering=4096 #设置缓冲
    daemonize=/opt/script/uwsgi.log #设置日志目录
    

    10启动uwsgi

    Uwsgi --ini uwsgi.ini
    文件夹下多出uwsgi.log,uwsgi.pid,uwsgi.sock三个文件
    

    11安装nginx

    wget -c https://nginx.org/download/nginx-1.12.2.tar.gz
    

    12解压nginx包

    tar -zxvf nginx...
    

    13编译安装

    ./configure 
    make && make install
    

    14创建软连接

    ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
    

    15启动nginx

    nginx
    

    16关闭uwsgi及nginx

    pkill -9 uwsgi
    pkill -9 nginx
    

    17备份nginx配置文件

    在/usr/local/nginx/conf目录下
    cp nginx.conf nginx.conf.bak

    18创建error.log日志文件

    在/var/log目录下
    mkdir nginx
    cd nginx
    touch error.log

    19修改nginx配置信息

    将format注释解掉!

    access_log  /var/log/nginx/access.log  main; #访问日志路径,注意:这个目录可能没有,需要创建
    gzip_types text/plain application/x-javascript text/css text/javascript application/x-httpd-php application/json text/json image/jpeg image/gif image/png application/octet-stream; #压缩格式
    error_log /var/log/nginx/error.log error; #错误日志注意:这个目录可能没有,需要创建
    
    location / {
        include uwsgi_params; #nginx加载uwsgi模块
        uwsgi_connect_timeout 30; #连键超时时间
        uwsgi_pass unix:/opt/script/uwsgi.sock; #nginx对应的uwsgi socket文件
        }
    
    
    location = /static/ {
        alias /opt/OurBlog/static;  #静态文件路径
        index index.html index.htm;  #首页
        }
    

    20关闭uwsgi和nginx然后重启项目

    修改uwsgi.ini文件中ip为127.0.0.1:8000
    

    查看80端口命令

    netstat -nltp | grep 80
  • 相关阅读:
    vue中@事件处理函数的柯里化
    一个例子生动理解js的原型_js的原型prototype和__protopy__区别
    vue3自定义v-model
    js初始化一个特定值的array
    dom的clientHeight、scrollHeight以及offsetHeight
    ts踩坑记录
    常见问题1
    资料share
    几种开放源码的TCPIP协议栈
    阻塞与非阻塞,同步与异步
  • 原文地址:https://www.cnblogs.com/vinic-xxm/p/11524426.html
Copyright © 2020-2023  润新知