当前位置:   article > 正文

Centos-部署django项目_centos django

centos django

如何部署一个好的django项目到Centos服务器上面去了,下面来记录一下
1:将项目拷贝到Centos服务器上,不管是xftp,还是scp,还是lrzsz,看自己的爱好了,我这里用的是xftp
(xftp和xshell配合起来食用,效果更佳哦)
2:这里我们将开发的好的study项目压缩包上传到服务器的/op/test目录下面
image.png
3:解压缩,放到上一级目录,解压地址看自己爱好

unzip test.zip  ../
  • 1

4:新建一个虚拟环境,专门用来运行此项目,这里我们用ven3来做试验

[root@localhost opt]# virtualenv --python=python  ven3
  • 1

5:激活一下虚拟环境

[root@localhost opt]# source  /opt/ven3/bin/activate
  • 1

6:接下来就是解决study项目运行所需的模块依赖
在开发电脑上面执行如下命令

#将所需安装包导出到一个文件,服务器安装此文件就可以安装物理机所需的依赖啦
pip3 freeze > requirements.txt  
  • 1
  • 2

上传至linux服务器
在Centos服务器的虚拟环境中,安装此文件即可

如果没有此模块依赖文件,那么就手动解决吧,。。。。
此时你要注意
python3 manage.py runserver 这个命令,并不是让你启动django项目的!!!
因为此命令,调用的是python 内置的wsgiref单机socket模块,性能低下,单进程单线程。。。
7:在Centos服务器上面执行

pip3  install  -r  ./requirements.txt  
  • 1

ps:如果不想用这个快捷办法安装所有依赖模块,那么就只能用老办法,启动项目然后看对应报错信息,然后再一个个安装依赖哦,不推荐
查看一下我的虚拟环境已经安装好的所以依赖包
image.png

8:启动项目,因为项目需要用到数据库mysql,但是我们还没有安装,所以会报错,安装一下

#缺少mysql,因此需要安装mariadb,且启动
(ven3) [root@ localhost study]# yum install mariadb-server  mariadb -y
  • 1
  • 2

ps:mariadb-server 就是mysql的兼容版本,性能更好。。。
9:安装完了之后,由于没有对于的数据库和表,所以需要手动建立一下数据库和导入对应的表

#必须先登录数据库再建立
(ven3) [root@ localhost study]# mysql -u  root  -p
create  database study;
show  databases;
use  study;
show  tables;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

10:手动建好数据库后,就需要导入数据表了
我的是window10,所以执行如下操作就可以了生成
image.png
image.png
mac电脑可以执行如下命令

#将本地所有数据库导入到一个alldb.sql,可以根据需要只导出自己需要的数据库
mysqldump  -uroot -p  --all-databases   >  alldb.sql 
#-d 参数是只导出表结构,不要表中的数据
mysqldump -uroot -p123 -d study > study .sql     #用它
mysqldump -uroot -proot --databases db1 db2 >/tmp/user.sql   #实例代码
  • 1
  • 2
  • 3
  • 4
  • 5

11:上传到Centos服务器,执行此命令
如果导入报错,可能是数据库服务没有启动,启动mariadb数据库

(ven3) [root@ study]# systemctl start mariadb
  • 1

12:发送此alldb.sql文件,给Centos机器,再进行数据导入
就是将SQL文件,通过lrzsz、scp、xftp等方式,发送此文件,给Centos服务器

#导入数据库表结构
mysql -uroot -p  study  <  /opt/study.sql   #指定数据库导入,否则会报错找不到数据库
  • 1
  • 2

我的导入完毕,查询一下,生成了对应的很多张表
image.png
13:启动项目进行测试

python3  study/study/manage.py  runserver  0.0.0.0:8888
  • 1

ps:注意检查修改settings.py中的allowed_host字段设置和数据库连接设置密码哦,否则会启动失败报错

发现报错了
用python3连接MySQL数据库出现问题“AttributeError: ‘str‘ object has no attribute ‘decode‘“解决办法

修改mysql源码,原因是python3不支持python2的编码格式导致的
image.png

image.png
将145,146代码进行注释就可以了
再次启动,最后效果图
image.png
大功告成~~~~~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/508339
推荐阅读
相关标签
  

闽ICP备14008679号