Gunicorn是一个unix上被广泛使用的高性能的Python WSGI UNIX HTTP Server。
和大多数的web框架兼容,并具有实现简单,轻量级,高性能等特点
废话不多说,直接上干货!!!!
1.创建虚拟机--->自行百度,一大推
2.我这里用的centos7迷你版镜像,这个无所谓
3.干净的虚拟机无法使用wget,需要我们配置yum源!!!这个重点!!!!!
4.yum源现在已经配置完成,开始下载python!
5.这里我使用的虚拟环境--->virtualenvwrapper,我就直接上我这个得环境安装了
PS:这里说一下使用ssl连接虚拟机的时候可能查不到虚拟机的ip,这个看我之前的随笔里边有记载
6.现在为止我们这个大的环境也就是算是安装完成了,现在开始启动Flask项目
6.1,创建虚拟环境
mkvirtualenv li
6.2 进入虚拟环境
workon li
6.3安装Gunicorn
pip3 install gunicorn
6.4查看centos防火墙的状态以及关闭防火墙
systemctl status firewalld #查看防火墙状态 systemctl stop firewalld #关闭防火墙 systemctl disable firewalld#关闭防火墙开机启动 systemctl is-enabled firewalld.service#检查防火墙是否启动
6.5 这里我直接用命令启动项目
gunicorn -w 3 -b 192.168.38.128:5000 app:app # w:工作进程的数量,为正整数 b:ADDRESS,ip加端口,绑定运行的主机 app:app.py文件 app:程序
6.6 这里说一下哈,centos只开放22端口,开放其他端口需要我们自己去设置,一下是命令
firewall-cmd --zone=public --add-port=80/tcp --permanent # --zone:作用域 –add-port=80/tcp #添加端口,格式为:端口/通讯协议 –permanent #永久生效,没有此参数重启后失效
6.7为了确保端口已开启,建议查看一下
firewall-cmd --list-ports
现在大功告成,有一些坑,这里归拢一下
1.yum源配置之后下载服务会报错,不管是update还是啥的都不管用,都是报这个错:No such file or directory: '/var/cache/yum/x86_64/7/_loca,经过我日思夜想深思熟虑抽完烟之后,我觉得这个错我看不懂,然后只要我看不懂的都rm -rf 就完事了,然后别忘记yum makecache 一下
2.Gunicorn启动项目的时候,可能在windows测试每一问题的代码在centos上会有问题,运行的时候回报错,但是Gunicorn这玩意报错太笼统,根本不知道错误地方在哪里,这个时候就需要在启动命令里加一个参数,打印具体错误:gunicorn -w 3 -b 192.168.38.128:5000 app:app -preload
3应该还会有一些人还是分不开启动项目命令中的app:app,不要着急,我这里直接给你图你就明白了