关键词

Django在Ubuntu14.04的部署方法

我将为您提供详细的"Django在Ubuntu14.04的部署方法"攻略:

确保服务器环境

在开始部署Django应用程序之前,请确保你的服务器上已经安装了以下软件:

  • Python 2.7
  • pip包管理器
  • virtualenv虚拟环境
  • nginx服务器
  • gunicorn网关

你可以使用以下命令来安装这些软件:

$ sudo apt-get update
$ sudo apt-get install python-pip python-dev nginx
$ sudo apt-get install git

安装完成后,使用以下命令来安装virtualenv和gunicorn:

$ sudo pip install virtualenv gunicorn

创建Django项目

在你的服务器上创建Django项目,并按照你的需要配置它。你可以使用以下命令来创建和配置一个新的Django项目:

$ mkdir ~/myproject
$ cd ~/myproject
$ virtualenv myproject_env
$ source myproject_env/bin/activate
$ pip install django
$ django-admin.py startproject myproject ~/myproject

在配置完Django项目后,执行以下命令:

$ cd ~/myproject
$ python manage.py migrate

创建Gunicorn启动文件

在你的项目目录中创建一个名为gunicorn_start的文件,并输入以下内容:

#!/bin/bash

NAME="myproject"
DJANGODIR=/home/user/myproject
SOCKFILE=/home/user/myproject/run/gunicorn.sock
USER=user
GROUP=webapps
NUM_WORKERS=3
DJANGO_SETTINGS_MODULE=myproject.settings
DJANGO_WSGI_MODULE=myproject.wsgi

echo "Starting $NAME as `whoami`"

source /home/user/myproject/myproject_env/bin/activate

cd $DJANGODIR
export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE
export PYTHONPATH=$DJANGODIR:$PYTHONPATH

RUNDIR=$(dirname $SOCKFILE)
test -d $RUNDIR || mkdir -p $RUNDIR

exec gunicorn ${DJANGO_WSGI_MODULE}:application \
    --name $NAME \
    --workers $NUM_WORKERS \
    --user=$USER \
    --group=$GROUP \
    --log-level=debug \
    --bind=unix:$SOCKFILE

确保将路径和名称替换为你的项目文件和相应的值。然后将文件设置为可执行:

$ chmod u+x /home/user/myproject/gunicorn_start

配置Nginx

使用以下内容更新你的Nginx配置文件在/etc/nginx/sites-available/myproject.conf:

server {
    listen      80;
    server_name example.com;

    error_log   /home/user/myproject/logs/nginx-error.log;
    access_log  /home/user/myproject/logs/nginx-access.log;

    location /static/ {
        alias /home/user/myproject/static/;
    }

    location /media/ {
        alias /home/user/myproject/media/;
    }

    location / {
        proxy_pass http://unix:/home/user/myproject/run/gunicorn.sock;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for;
    }
}

确保将路径和名称替换为你的项目文件和相应的值。

通过同时创建符号链接才能启用站点并重启Nginx:

$ sudo ln -s /etc/nginx/sites-available/myproject.conf /etc/nginx/sites-enabled/
$ sudo service nginx restart

启动应用

使用以下命令启动启动gunicorn守护进程:

$ /home/user/myproject/gunicorn_start

现在你可以通过访问你的服务器的IP地址或域名来访问你的Django网站。

以上就是"Django在Ubuntu14.04的部署方法"的完整攻略,其中包含了创建Django项目和配置Nginx示例。

本文链接:http://task.lmcjl.com/news/15663.html

展开阅读全文