专栏首页木子昭的博客将Django部署到Centos7全攻略

将Django部署到Centos7全攻略

Django部署到Cenos7需要安装大量的依赖包, 有很多坑需要踩, 这里是踩坑后探索出的标准化步骤

实验环境:

  • 腾讯云centos7

用centos7.5镜像创建容器(这步操作按自己需求来, 不使用docker的可以跳过这步)

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的镜像, 问题顺利解决~

安装各种依赖包

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源码包

wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz

解压源码包

tar -xvJf  Python-3.7.0.tar.xz

进入源码目录, 并编译安装

cd Python-3.7.0
./configure --prefix=/usr/local/bin/python3
make
make install

将python3和pip3添加到系统环境变量中

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

验证安装效果

yum install which
which python3
which pip3

升级pip

pip3 install --upgrade pip

安装扩展包

yum install epel-release

安装python-pip

yum install python-pip

安装pipenv

pip install pipenv

安装nodejs

yum install nodejs

安装pm2

npm install pm2 -g

在manager.py的同级目录下, 创建pm2运行django程序的脚本文件start.sh

vi start.sh
i
python manage.py runserver 0.0.0.0:9000
:wq

pm2运行脚本, 开启django服务

pm2 start start.sh

查看服务运行状态

pm2 list

停止服务

pm2 delete start.sh

效果测试 https://fangyuanxiaozhan.com

小结:

完成以上步骤后, 就可以在物理机的9000端口访问到django服务了,如果想在物理机用nginx将9000端口的服务转发到80端口, 可以参考我以前写过的一篇nginx配置二级域名

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 解决在/etc/porfile下设置环境变量以后zsh没有起效的问题

    今天在添加java的环境变量的时候,我在/etc/profile添加了环境变量,因为我使用的是zsh,在source /etc/profile以后,zsh的主题...

    用户3170383
  • linux下修改文件所属用户组和文件权限的方法

    第一个是修改文件所属的的用户,第二个修改文件所属用户组,-R属性为可选属性,意思是递归修改,也就是把文件下所有文件,包括子目录一起修改,大多数情况下-R 属性都...

    用户3170383
  • 快速在 Windows 上搭建 Jekyll 开发环境

    发布于 2018-03-04 05:30 更新于 2018-08...

    walterlv
  • 申请Let's Encrypt通配符证书

    Let's Encrypt支持通配符证书了,也就是说你只需要为你的网站申请*.example.com这样一个证书,所有的子域名都可以支持,下面介绍下申请方法:

    緣來
  • ubuntu下安装node版本管理工具NVM

    nvm是nodejs的版本管理工具,因为nodejs编译非常麻烦,然后编译上有些又需要不同的版本,nvm就应运而生了,nvm是一个可以让你在同一台机器上安装和切...

    用户3170383
  • Python爬虫--- 1.4 正则表达式:re库

    这里其实就是一个非常简单的删除当前目录下所有txt文件的命令, *号其实就一个 ‘通配符’。表示任何形式的数据。 从这里我们就可以引出正则表达式的概念:

    緣來
  • Mac下也能用抓包工具Fiddler

    一直以来都是在Windows底下工作,对于抓包工具,自然而然当属Fiddler最最出色。不过Fiddler是在.Net runtime环境下运行的,所以想要在M...

    石瞳禅
  • 解决docker容器启动不了的问题

    今天在学习docker的时候遇到个问题,在通过镜像创建容器的过程中,使用命令:docker run --name docker-test -d learn/pi...

    用户3170383
  • git 合并两个仓库

    林德熙
  • 编写可靠 Shell 脚本的 8 个建议

    这八个建议,来源于键者几年来编写 shell 脚本的一些经验和教训。事实上开始写的时候还不止这几条,后来思索再三,去掉几条无关痛痒的,最后剩下八条。毫不夸张地说...

    哲洛不闹

扫码关注云+社区

领取腾讯云代金券