Django云服务器部署(centos+nginx+mysql+uwsgi+python3)

(一)购买一个云服务器

我们要用Python的Django框架来部署我们的网站,那首先就需要我们购买一个云服务器,怎么买呢,可以买阿里云的,百度云的,或是联系jacky(公众号:数据分析部落)给你一个免费15天的云服务器,可以先体验一下,当然还有一些免费的,大家可以自行找来购买

  • 注意:这里要买的是云服务器,不是云虚拟主机

  • 注意:选择的是linux系统( 包括centos或Ubuntu)

  • 购买成功后,记住IP号,和云服务器名,还有我们的密码;

(二)用xshell 连接到我们的云服务器

Django云服务器部署(centos+nginx+mysql+uwsgi+python3)

  • 连接成功,我们就进入了如下界面:

Django云服务器部署(centos+nginx+mysql+uwsgi+python3)

(三)配置LNMP

3.1 LNMP 基础铺垫

关于什么是LNMP,官网写的很好,也很有逻辑,这里jacky就直接给大家截图LNMP官网中的内容,跟大家分享了;

Django云服务器部署(centos+nginx+mysql+uwsgi+python3)

3.2 下载LNMP安装包

3.3 将LNMP安装包,上传到服务器上

  • 怎么上传?
安装命令
$ sudo yum install lrzsz

使用方式
$rz

Django云服务器部署(centos+nginx+mysql+uwsgi+python3)

3.4 将LNMP解压并在服务器上安装

解压
tar xf lnmp.tar.gz
cd lnmp1.5/
./install.sh

3.5 LNMP配置

  • 运行上面的命令,服务器将自动安装LNMP,安装前系统会询问我们安装什么版本的MySQL,MySQL我们选择5.5,内存大的就选5.5以上;其余的选择同,或者直接回车都安装默认也是没有关系的,之后就是漫长的安装,几十分钟吧… …

(四)安装Python3

系统自带的是Python2,这里我们需要的是Python3,为什么用Python3不用Python2,请参看jacky的其他文章

4.1 下载安装包

wget https://www.python.org/ftp/python/3.5.4/Python-3.5.4.tgz

Django云服务器部署(centos+nginx+mysql+uwsgi+python3)

4.2 解压并安装Python3

tar -zxvf Python-3.5.4.tgz
cd Python-3.5.4
./configure --prefix=/usr/local/python3
make && make install

4.3 把Python3配置到服务器的全局变量中

Django云服务器部署(centos+nginx+mysql+uwsgi+python3)

  • 上面我们已经在服务器上成功的安装了,但在终端上并不能直接使用,我们需要使用两个 ln命令
ln -s /usr/local/python3/bin/python3.5 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
  • 注意:上面的ln -s /usr/local/python3/bin/python3.5 /usr/bin/python3命令中python3.5和pip3后一定要加一个空格,这点非常非常的重要

(五)安装和使用虚拟环境virtualenv

  • 执行安装命令
pip3 install virtualenv
  • 更新pip3,并再次安装virtualenv
pip3 install --upgrade pip
pip3 install virtualenv
  • 创建名字为django的虚拟环境,执行命令
python3 -m venv /home/virtualenv/django
cd /home/virtualenv/django/bin
source activate
  • 下面为配置成功的界面
    Django云服务器部署(centos+nginx+mysql+uwsgi+python3)

(六) 在django的虚拟环境下安装第三方库

6.1 批量导入

要安装的第三方库,有很多,这里jacky选择了更简便的批量安装,命令方法如下:

  • 在服务器下,新建txt文件,并把下面的库粘贴到txt文件中保存
vi reqrequirements.txt

diff-match-patch20121119
Django
2.0.1
django-crispy-forms1.7.0
django-formtools
2.1
django-import-export0.6.1
django-pure-pagination
0.3.0
django-ranged-response0.2.0
django-reversion
2.0.12
django-simple-captcha0.5.6
djangorestframework
3.8.2
et-xmlfile1.0.1
future
0.16.0
httplib20.9.2
jdcal
1.3
odfpy1.3.6
openpyxl
2.4.9
Pillow5.0.0
pytz
2018.4
PyYAML3.12
six
1.11.0
tablib0.12.1
unicodecsv
0.14.1
uWSGI2.0.17
xlrd
1.1.0
xlwt==1.3.0

Django云服务器部署(centos+nginx+mysql+uwsgi+python3)

6.2 批量安装命令

pip install -r reqrequirements.txt

6.3 安装mysqlclient安装包

因为这个安装包,比较容易出错,所以单独来安装这个包