赞
踩
假设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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。