部署 Django & Nginx & Gunicorn

作者:狼烟四起2024.01.17 19:39浏览量:6

简介:本文将指导您如何部署 Django、Nginx 和 Gunicorn,以构建高效、稳定的 Web 应用程序。我们将从前期准备、Django 项目配置、Nginx 安装配置和 Gunicorn 安装配置等方面进行详细介绍。

部署 Django、Nginx 和 Gunicorn 是构建高效、稳定的 Web 应用程序的重要步骤。在本篇文章中,我们将从前期准备、Django 项目配置、Nginx 安装配置和 Gunicorn 安装配置等方面进行详细介绍。
一、前期准备
在开始部署之前,我们需要进行一些准备工作。首先,确保您的服务器使用的是 Ubuntu 18.04 版本,因为本文中的示例代码是基于这个版本的。此外,您还需要安装 Python 3.6.5 和 Django 1.11.12。
安装 Nginx 和 Gunicorn 的命令如下:

  1. 安装 Nginx
    sudo apt-get install nginx
  2. 安装 Python3(如果已安装可忽略)
    sudo apt-get update
    sudo apt-get install python3.6
  3. 安装 pip(如果已安装可忽略)
    sudo apt-get install python3-pip
  4. 安装 virtualenv(如果已安装可忽略)
    sudo pip install virtualenv
    二、Django 项目配置
    在部署 Django 项目之前,我们需要进行一些配置。首先,关闭 debug,修改 hosts 文件。然后,创建一个新的虚拟环境,并激活它。在虚拟环境中安装所需的依赖项,并运行 Django 项目。
    三、Nginx 安装配置
    接下来,我们需要安装和配置 Nginx。首先,使用以下命令安装 Nginx:
    sudo apt-get install nginx
    然后,编辑 /etc/nginx/sites-available 目录下的 default 文件,修改配置如下:
    server {
    listen 80;
    server_name 127.0.0.1;
    location / {
    proxy_pass http://127.0.0.1:8000;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
    }
    保存并关闭文件后,使用以下命令测试配置是否正确:
    nnginx -t
    如果配置正确,使用以下命令重新加载 Nginx 配置:
    nnginx -s reload
    四、Gunicorn 安装配置
    最后,我们需要安装和配置 Gunicorn。首先,使用以下命令安装 Gunicorn:
    sudo pip install gunicorn
    然后,在 Django 项目根目录下创建一个名为 gunicorn_start 的文件,并将以下代码复制到该文件中:

    !/bin/bash

    gunicorn myproject.wsgi:application -w 4 -b :8000 —access-logfile - —error-logfile -
    在上述代码中,myproject 是您的 Django 项目名称,application 是您的 Django 项目 WSGI 应用程序对象。该脚本将启动 Gunicorn,并指定应用程序监听端口为 8000,工作进程数为 4。您可以将这些值根据您的需要进行更改。保存文件后,使用以下命令使其可执行:
    nchmod +x gunicorn_start
    现在,您可以使用以下命令启动 Gunicorn:
    sudo ./gunicorn_start
    总结:通过以上步骤,您已经成功部署了 Django、Nginx 和 Gunicorn。Nginx 将接收来自客户端的请求,并将其转发给 Gunicorn 进行处理。Gunicorn 将运行 Django 项目并提供 Web 服务。请确保在部署之前进行充分测试和验证配置的正确性,以确保应用程序的稳定性和安全性。