Gunicorn如何在托管多个Flask网站的服务器上工作?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (139)

- 我正在使用NGINX作为静态服务器/反向代理在Linode VPS上部署几个基于Flask的站点。

- 通过读取传入的标头并为每个给定的站点使用/ etc / nginx .conf文件,我完全理解它对多个站点的工作原理。

- 我无法找到清晰度是如何启动每个站点的venv中安装的gunicorn来处理从VPS范围的NGINX服务器发送的WSGI调用。

- 我看到教程中使用的supervisord,但仅限于单个站点,而不是VPS级别的监督(如NGINX)如何为特定站点启动Gunicorn。我也不清楚为什么每个站点都有自己的Gunicorn安装。这是如何运作的?

很抱歉,如果这与其他问题重复,但我在这里或其他地方找不到任何答案。

提问于
用户回答回答于

NGINX应将流量重定向到适当的端口。每个烧瓶站点需要它自己的gunicorn工作人员启动它。

例如,您在supervisor配置中为每个站点运行的命令将如下所示:

[program:site1]
command=venv1/bin/gunicorn --workers num_workers --bind localhost:8081 flask_app1:app
#etc...

[program:site2]
command=venv2/bin/gunicorn --workers num_workers --bind localhost:8082 flask_app2:app
#etc...

希望这增加了一些清晰度

扫码关注云+社区

领取腾讯云代金券