Django 学习踩坑记

(二)在Centos7上部署

Posted by Cheereus on April 18, 2020

本文是对自己学习过程中的记录和总结

服务器为阿里云学生机,系统为 CentOs7.3 64位

更新 yum 并安装必备依赖

yum 是需要 Python 2.7 的,因此最好在安装 Python3 之前进行操作

yum update
yum install yum-utils
yum groupinstall development
yum install libffi-devel
yum install zlib zlib-devel -y

安装 Python 3.7.1

注意:建议直接安装 Anaconda

wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz
gunzip Python-3.7.1.tgz && tar -xvf Python-3.7.1.tar
cd Python-3.7.1
./configure -prefix=/usr/local/
make altinstall

将默认的 python 和 pip 设置为 3.7 版本

此操作会将系统默认的 Python 和 pip 设置为新安装的 3.7 版本,对 yum 有影响

ln -s /usr/local/bin/python3.7 /usr/bin/python
ln -s /usr/local/bin/pip3.7 /usr/bin/pip

如果上述提示文件已存在,则先删掉已存在的文件

此时由于 yum 是基于 python2 的,因此要单独给 yum 配置 python2,否则 yum 会出问题

修改 /usr/bin/yum 文件中的第一行为 #!/usr/bin/python2.7 即可

更新 pip 到最新版本

因为 Django 3 需要 pip 20 以上

python -m pip install --upgrade pip

后续就是 Django 的安装

参考前一篇文章,操作基本相同

出现的问题

纯 python 环境遇到了 sqlite3 不存在的问题,后改成了 Anaconda 才解决,因此建议直接安装 Anaconda

阿里云有安全组配置,需要在安全组中开放端口后,才能在外网访问到 Django 服务