django部署到cenos7需要安装大量的依赖包, 有很多坑需要踩, 这里是踩坑后探索出的标准化步骤
实验环境: 腾讯云centos7
用centos7.5镜像创建容器(这步操作按自己需求来, 不使用docker的可以跳过这步)
1
|
docker run - t - i - - name fangyuanxiaozhan - com - p 9000 : 9000 centos: 7.5 . 1804 / bin / bash
|
创建名为fangyuanxiaozhan-com的容器
将容器的9000端口映射到物理机的9000端口
推荐使用centos:7.5.1804这个镜像, 开始我用了最新版的centos镜像, 安装lxml的时候, 报出了内核崩溃的错误, 花了整整一天也没有解决, 最后老老实实换了centos:7.5.1804的镜像, 问题顺利解决~
安装各种依赖包
1
2
|
yum - y groupinstall "development tools"
yum - y install zlib - devel bzip2 - devel openssl - devel ncurses - devel sqlite - devel readline - devel tk - devel gdbm - devel db4 - devel libpcap - devel xz - devel libffi - devel gcc automake autoconf libtool make wget
|
下载python3.7源码包
1
|
wget https: / / www.python.org / ftp / python / 3.7 . 0 / python - 3.7 . 0.tar .xz
|
解压源码包
1
|
tar - xvjf python - 3.7 . 0.tar .xz
|
进入源码目录, 并编译安装
1
2
3
4
|
cd python - 3.7 . 0
. / configure - - prefix = / usr / local / bin / python3
make
make install
|
将python3和pip3添加到系统环境变量中
1
2
|
ln - s / usr / local / bin / python3 / bin / python3 / usr / bin / python3
ln - s / usr / local / bin / python3 / bin / pip3 / usr / bin / pip3
|
验证安装效果
1
2
3
|
yum install which
which python3
which pip3
|
升级pip
1
|
pip3 install - - upgrade pip
|
安装扩展包
1
|
yum install epel - release
|
安装python-pip
1
|
yum install python - pip
|
安装pipenv
1
|
pip install pipenv
|
安装nodejs
1
|
yum install nodejs
|
安装pm2
1
|
npm install pm2 - g
|
在manager.py的同级目录下, 创建pm2运行django程序的脚本文件 start.sh
1
2
3
4
|
vi start.sh
i
python manage.py runserver 0.0 . 0.0 : 9000
:wq
|
pm2运行脚本, 开启django服务
1
|
pm2 start start.sh
|
查看服务运行状态
1
|
pm2 list
|
停止服务
1
|
pm2 delete start.sh
|
效果测试
小结:
完成以上步骤后, 就可以在物理机的9000端口访问到django服务了,如果想在物理机用nginx将9000端口的服务转发到80端口, 可以参考我以前写过的一篇nginx配置二级域名
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://www.jianshu.com/p/c640f052648f