阿里云部署Django项目(超详细图文教程)
Part2. 使用Nginx, Gunicorn, virtualenv, supervisor 部署Django应用
前言:
花了一个月的空闲时间,终于成功把Django网站部署到了阿里云ECS上,包含以下功能:
- 不使用任何第三方工具,直接用网页连接阿里云ECS
- 使用GIT进行源码控制和上传到服务器
- 使用git hooks实现自动部署
- 用的是时下比较流行的一套部署方案——Nginx, Gunicorn, virtualenv, supervisor and PostgreSQL
- 可以在同一台服务器上部署两个、甚至多个网站
光说不练假把式,建议大家边看边操作!
软件介绍
nginx: 反向代理服务器,处理静态资源,负载均衡等。
gunicorn: Python WSGI HTTP Server for UNIX。
virtualenv: 创建独立的 python 环境。
supervisor: 基于linux操作系统的一款服务器管理工具,用以监控服务器的运行,发现问题能立即自动预警及自动重启等功能。
1.系统更新和软件安装
依次在远程管理终端下执行以下步骤,进行服务器系统更新和依赖软件安装:
* 更新系统
sudo aptitude update
sudo aptitude upgrade
* 安装数据库PostgreSQL
sudo aptitude install postgresql postgresql-contrib
sudo aptitude install libpq-dev python-dev
* 安装virtualenv
sudo aptitude install python-virtualenv
* 安装Supervisor
sudo aptitude install supervisor
* 安装Nginx
sudo aptitude install nginx
PS: 可以使用右上角的“复制命令输入”将命令粘贴进来
过程中会提示需要多少的磁盘空间,如果空间够用的话选择 yes 就可以继续了,耐心等待更新包安装
对比文章标题,大家会发现Gunicorn还没有安装,稍后我们会在创建出的python环境中安装Guni