如何在生产环境中部署 Django 项目

文章目录

    在 ~/.bashrc 中设置环境变量

    以标明这是生产环境,而非本地开发环境。

    export DEBUG=False
    

    使用 gunicorn & Nginx

    1. 使用 gunicorn 启动 django

      cd <YOUR-PROJECT-PATH> 
      gunicorn <PROJECT-NAME>.wsgi -D -b 127.0.0.1:<PORT>
      
    2. Nginx 对应的配置

      server {
      listen 80;
          server_name <YOUR-DOMAIN>;
      location / {
      	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      	proxy_set_header Host $http_host;
      	proxy_redirect off;
      	if (!-f $request_filename) {
      	    proxy_pass http://127.0.0.1:<PORT>;
      	    break;
      	}
      }
      }
      

    如何将部署流程自动化

    思路:

    • 根据项目名和端口号生成启动脚本, 并包含环境变量的配置, 和生效
    • 生成独立的 Nginx 配置文件,以便部署到 site-available 目录下

    关于作者 🌱

    我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊,或者关注我的个人公众号“大象工具”, 查看更多联系方式