假设python和sqlite3均满足当前django项目最低配置需求。(如果python或sqlite3版本过低需要升级,centos7升级sqlite3:https://zhangphil.blog.csdn.net/article/details/111657826   

centos7升级python:https://zhangphil.blog.csdn.net/article/details/111657460 )

事先准备:

django在centos7上可能依赖的工具包安装(非必需,但可能会解决各种坑):

yum update -y
yum -y groupinstall "Development tools"
yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel psmisc libffi-devel

 

下面开始在centos7上部署django项目。

1、pip安装虚拟环境管理包。

pip安装虚拟环境组件:

pip install virtualenv

然后为虚拟环境包建立软链接:

ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv

2、在把本地django项目代码传到centos服务器之前,先把依赖的包列表输出:

pip freeze > requirements.txt

3、把本地的django代码上传到centos服务器,然后cd到项目跟目录下,建立虚拟环境:

virtualenv  venv

4、启动虚拟环境:

source .venv/bin/activate

5、在虚拟环境中安装依赖的包:

pip install -r requirements.txt

6、在虚拟环境中初始化数据库:

python manage.py makemigrations
python manage.py migrate

7、启动django服务器:

python manage.py runserver 0.0.0.0:8000

 

注意:

1、如果sqlite3安装版本以达到要求,但是做数据库初始化时候仍提升版本低,则可以使用pysqlite替换django中的sqlite3,方法是先通过pip安装pysqlite3,

pip install pysqlite3

然后通过vim编辑器把虚拟环境(venv)中报错提示的base.py

vim venv/lib/python3.9/site-packages/django/db/backends/sqlite3/base.py

代码文件中的头部引得包换掉,把

from sqlite3 import dbapi2 as Database

改成

from pysqlite3 import dbapi2 as Database

 

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐