EC2 AWS 上的烧瓶
Posted
技术标签:
【中文标题】EC2 AWS 上的烧瓶【英文标题】:Flask on EC2 AWS 【发布时间】:2017-12-21 17:28:42 【问题描述】:我正在尝试在 EC2 AWS 实例上使用 python 3.5 运行我的 Flask 应用程序。 我已经在我的系统上尝试了相同的应用程序,并且使用链接运行良好:
http://127.0.0.1:5000/api/v1.0/people/?email=jaffer@example.com
同样,我在 AWS 实例上启动了 Flask 应用程序,但是在以类似方式点击 url 后,我看不到输出: http://ec2-xx-xxx-xx-xxx.compute-1.amazonaws.com:5000/api/v1.0/people/
我启动应用程序为:
python3.5 FlaskRestAPI.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
请告诉我我需要做什么才能看到输出?
【问题讨论】:
127.0.0.1 是本地主机接口。您需要将其绑定到外部 IP 或 0.0.0.0。 @DanielRoseman 我该怎么做.. 请你和我分享一下? 不知道。 FlaskRestAPI 是什么样的? @DanielRoseman 你的想法行之有效.. 谢谢 【参考方案1】:您将需要某种 Web 服务器网关接口,例如 uWSGI 或 Gunicorn,并且很可能需要一个 Web 服务器/反向代理,例如 nginx 或 Apache。
这是一个使用 uWSGI 和 Nginx 的不错的教程:http://bathompso.com/blog/Flask-AWS-Setup/
【讨论】:
这不是必需的。您可以运行公共 Flask 服务器 如何运行公共烧瓶服务器?【参考方案2】:一种更好的方法是使用 AWS 的 ElasticBeanstalk 服务在 AWS 上托管您的烧瓶应用程序。这是一个无缝的过程,它可以让您的烧瓶应用程序在几分钟内工作。您还将获得一个公共 URL,您可以通过该 URL 访问您的烧瓶应用程序。
此处提供了有关如何在 AWS 上使用 ElasticBeanstalk 的烧瓶应用程序的更详细说明:
Hosting a flask application using ElasticBeanstalk
【讨论】:
以上是关于EC2 AWS 上的烧瓶的主要内容,如果未能解决你的问题,请参考以下文章
Elastic Beanstalk:EC2 服务器上的应用程序目录/脚本位置
jac(jinja-assets-compressor)在 AWS elasticbeanstalk 上的烧瓶应用程序中不起作用