zoukankan      html  css  js  c++  java
  • django项目部署到centos

    服务器是使用的阿里云的centos 7.6

    项目使用的是 Python3.9.5 + Django 3.2.4

    目标:将django项目部署到centos上,centos + Python + django + uwsgi + nginx

    Python下载地址:https://www.python.org/ftp/python/3.9.5/
    nginx下载地址:http://nginx.org/download/nginx-1.18.0.tar.gz

    进入到centos后,里面是没有环境的,所以全部都需要安装,以下就是安装方法,当然安装的过程中,会遇到一点坑,不过我已经趟过了,也已经解决了,关于这些坑及解决方法,大家可以看我其他的文章。

    一、更新系统包,安装软件管理包和可能使用的依赖

    yum update -y
    yum -y groupinstall "Development tools"
    yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel libffi-devel

    二、安装Python,项目使用的是Python3.9.5,所以我安装的也是 3.9.5 版本

    # 1.下载
    wget https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tgz
    
    # 2.解压
    tar -zxvf Python-3.9.5.tgz
    
    # 3.进入到解压后的文件夹
    cd Python-3.9.5
    
    # 4.设置Python安装位置,我是在根目录创建一个文件,将Python安装在这个文件夹中
    ./configure --prefix=/huyang/python395
    
    # 5.编译与安装
    make && make install
    
    # 6.创建Python及pip的软链接(python3, pip3)
    ln -s /huyang/python395/bin/python3.9 /usr/bin/python3
    ln -s /huyang/python395/bin/pip3.9 /usr/bin/pip3

    三、安装nginx

    # 1.下载
    wget http://nginx.org/download/nginx-1.18.0.tar.gz
    
    # 2.解压
    tar -zxvf nginx-1.18.0.tar.gz
    
    # 3.进入nginx文件夹
    cd nginx-1.18.0
    
    # 4.编译与安装,因为是默认安装,所以没有设置安装位置
    ./configure
    make && make install

    四、上传项目,安装Python库

    ftp上传就可以了,安装库:比如:pip3 install django 等,安装自己项目中用到的库就可以了。

    例:项目结构,方便大家知道下面配置文件怎么写

    project_name
      app_name
              views.py
              models.py
              admin.py
              ...
      project_name
        wsgi.py
        settings.py
        ...

    五、安装 uwsgi,写 uwsgi 配置文件

    # 安装uwsgi
    pip3 install uwsgi

    项目 project_name 是放在  /huyang/ 下面,所以先进入项目文件夹

    cd /huyang/project_name

    新建一个 uwsgi.xml 配置文件

    vi uwsgi.xml

    给 uwsgi.xml 文件写配置

    <uwsgi>    
       <socket>127.0.0.1:8997</socket> 
       <chdir>/huyang/project_name/</chdir>           
       <module>project_name.wsgi</module> 
       <processes>4</processes>     
       <daemonize>uwsgi.log</daemonize>
    </uwsgi>

    可以使用  " python3 manage.py runserver " 测试下项目是否可以跑起来,如果正常跑起来,那就可以启动 uwsgi 了

    uwsgi -x uwsgi.xml

    六、编写nginx配置文件,启动nginx

    nginx是默认安装,所以位置是在:/usr/local/nginx

    nginx默认配置文件是在:/usr/local/nginx/conf

    为了避免出错,我们可以先将配置文件 nginx.con 拷贝一份出来

    cp  nginx.conf nginx.conf.bak

    然后在编写配置文件 nginx.conf

    vi nginx.conf
    worker_processes  1;
    events {
        worker_connections  1024;
    }
    http {
        include       mime.types;
        default_type  application/octet-stream;
        sendfile        on;
        server {
            listen       80;
            server_name  www.django.cn;
            charset utf-8;
            location / {
               include uwsgi_params;
               uwsgi_pass 127.0.0.1:88;
               uwsgi_param UWSGI_SCRIPT project_name.wsgi;
               uwsgi_param UWSGI_CHDIR /huyang/project_name;
               
            }
            location /static/ {
            # 静态文件我是收集在 /huyang/static/ 下
            alias /huyang/static/; 
            }
        }
    }

    然后重启nginx

    cd /usr/local/nginx/sbin
    
    ./nginx
    
    ./nginx -s reload

    然后打开浏览器,访问我们配置的  server_name  就可以访问到我们的项目了,*:上面写的 www.django.cn 只是为了交大家怎么写,大家可以修改成自己的ip地址,或者真实的域名。

  • 相关阅读:
    POJ 1681 Painter's Problem(高斯消元法)
    HDU 3530 Subsequence(单调队列)
    HDU 4302 Holedox Eating(优先队列或者线段树)
    POJ 2947 Widget Factory(高斯消元法,解模线性方程组)
    HDU 3635 Dragon Balls(并查集)
    HDU 4301 Divide Chocolate(找规律,DP)
    POJ 1753 Flip Game(高斯消元)
    POJ 3185 The Water Bowls(高斯消元)
    克琳:http://liyu.eu5.org
    WinDbg使用
  • 原文地址:https://www.cnblogs.com/shiyixirui/p/14994317.html
Copyright © 2011-2022 走看看