我将为您提供详细的"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示例。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Django在Ubuntu14.04的部署方法 - Python技术站