Flask+Gunicorn+Nginx配置多个app

请自行安装好nginx、gunicorn和flask的运行环境,这里不再赘述

Nginx配置

修改nginx的配置

vi /etc/nginx/sites-available/default

//default
server {
listen 80;//监听80端口
server_name www.ikiyomi.cc;
access_log /root/web/logs/nginx_app.log;
//转发第一个app的请求
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header host $http_host;
proxy_pass http://127.0.0.1:5000;
}
//转发第二个app的请求
location /weixin {
proxy_pass http://127.0.0.1:5001;
}
}

测试配置文件是否产生错误

nginx -t

开启服务

service nginx start

Flask app配置

将两个app运行的端口与nginx定义的端口一致,本地运行

//app_1
if __name__ == '__main__':
app.run(debug=False, port=5000)
# 127.0.0.1:5000
//app_2
if __name__ == '__main__':
app.run(debug=False, port=5001)
# 127.0.0.1:5001

Gunicorn配置

Gunicorn配置文件

//gunicorn_app1.conf
//配置方式相似,以app_1为例
# 绑定5000端口,与Flask端口一致
bind = "127.0.0.1:5000"
# 线程数
workers = 3
backlog = 2048
worker_class = "gevent"
# debug = True
proc_name = "gunicorn.pid"
pidfile = "/tmp/gunicorn.pid"
# logfile = "/root/wechat/logs/20161019.log"
accesslog = "/root/wechat_web/logs/gunicorn.log"
loglevel = "debug"
# 是否以守护进程方式运行
daemon = True

运行Gunicorn

gunicorn -c gunicorn_app1.conf app_1:app

参数说明:

  • -c 以配置文件方式运行
  • app_1 文件名
  • app app名

查看gunicorn守护进程是否运行

ps aux | grep gunicorn



作者:ioiogoo
链接:https://www.jianshu.com/p/040b9446acd2
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
posted @   菩提浪子  阅读(201)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示

目录导航