本文是快速最小化安装Django指南,详细安装指南参考complete installation guide。
安装Python
django运行需要使用的版本见What Python version can I use with Django?:
| Django version | Python versions | 1.8 | 2.7, 3.2 (until the end of 2016), 3.3, 3.4, 3.5 | | 1.9, 1.10 | 2.7, 3.4, 3.5 | | 1.11 | 2.7, 3.4, 3.5, 3.6 | | 2.0 | 3.5+ |
当前在CentOS7上默认安装是2.7.5
,并且EPEL可安装Python最高版本是3.4,恰好不能支持django 2.0。手工编译安源代码在系统移植上比较麻烦,且2.0还处于preview阶段(预计2017年底发布),所以当前采用以下组合:
- Python 3.4
- Django 1.11 (长期支持版本至2020年Q1)
参考 How to get Django 中有关django supported versions说明,对于生产环境,建议采用LTS版本 1.11 以及预计2019年Q1发布2.2版本,可保持较长的产品生命周期。
当前django官方文档以1.11版本为基准,所以开发使用1.11文档比较齐全。
采用Python 3.4运行Django可以使得后续升级到Django 2.2时Python版本语法无需重大转换。
以下安装采用EPEL提供的python 3.4
wge https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo rpm -ivh epel-release-latest-7.noarch.rpm
sudo yum install python34
sudo yum install python34-setuptools
sudo easy_install-3.4 pip
安装virtualenv- 参考virtualenv installation
sudo pip3.4 install virtualenv
设置环境 - 使用普通用户身份 - 参考 virtualenv User Guide
virtualenv venv
source venv/bin/activate
这里
venv
是创建虚拟环境的目录此时已经激活虚拟环境,就可以使用
python
和pip
,无需在指定版本,可以可以操作系统全局安装版本区分。
安装django
pip install django
安装django 2.0所需python3.5+ (备选参考)
如果需要测试运行django 2.0,可以参考 digitalocean 网站的 How To Install Python 3 and Set Up a Local Programming Environment on CentOS 7 使用ISU提供的最新版本
sudo yum -y update
sudo yum -y install yum-utils
sudo yum -y groupinstall development #需要开发工具包来编译源代码
sudo yum -y install https://centos7.iuscommunity.org/ius-release.rpm
sudo yum -y install python36u
sudo yum -y install python36u-pipn
然后可以设置venv
虚拟环境
mkdir environments
cd environments
python3.6 -m venv my_env
source my_env/bin/activate
激活虚拟环境之后,就可以使用python
代替python3.6
,以及使用pip
代替pip3.6
,方便进行开发。
有关在生产环境部署 Nginx+uWSGI+Django 方法参考 设置Django和Nginx uWSGI