没有端口号的情况下如何部署Flask项目?在同一服务器上托管多个Flask项目的标准方法是什么?

时间:2019-01-31 04:02:09

标签: flask deployment web-deployment web-hosting

我有三种产品,并希望将它们托管在我的服务器上。

我不确定如何部署它们。从我的能力范围来看,我知道有两种方法。

  1. 将每个产品部署在不同的端口上

http://3.18.21.199:5001/twiiter http://3.18.21.199:5002/summary http://3.18.21.199:5003/sentiment

  1. 将每个部署在具有不同路由的同一端口上。

http://3.18.21.199:5000/twiiter http://3.18.21.199:5000/summary http://3.18.21.199:5000/sentiment

我能从烧瓶极客那里得到建议吗?那是正确的方法。

另外,当我们发布产品时,最好不要给链接提供端口号。喜欢

3.18.21.199:5001/twiiter 3.18.21.199:5002/摘要 3.18.21.199:5003/情绪

理想情况下应该是

3.18.21.199/twiiter 3.18.21.199/摘要 3.18.21.199/情绪

我们如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

我认为不可能在一个端口上运行两个应用程序。使用反向代理不会真正起作用,因为它不知道将请求转发到哪个应用。

您需要做的是在不同的端口上运行它们,否则您可以尝试做(鉴于3个应用程序很小)是使用蓝图将它们组合为一个应用程序。您可以执行此操作的另一种方法是进行子域操作,例如:

twitter.3.18.21.199.com sentiment.3.18.21.199.com summary.3.18.21.199.com

要实现此目标,您首先必须在三个不同的端口上启动三个Gunicorn进程,然后依次按此video和此question

设置Nginx反向代理

最理想的设置是将这三个应用程序组合在一起。

相关问题