如何使用aws-eb控制台在aws-beanstall上为python2.7.14程序创建环境应用程序



我对AWS和MacOS都是新手。然而,我正在尝试在aws beanstall中创建简单的python应用程序。我让他们默认的演示应用程序(在创建环境/应用程序时作为选项提供的应用程序(正常工作。我遵循了本教程,代码在本地运行(python 2.7.14(

但是,当我通过zip上传这个application.py和requirements.txt时,当我加载应用程序url时,编译后的应用程序显示健康"正常",但显示"内部服务器错误"。

我不知道如何调试,甚至不知道调试什么,因为代码很简单:这主要是一个不兼容的环境问题。

因此,我到处都在寻找如何使我的AWSEB环境成为python2.7,而不是它给我的python3.4,用于预配置的docker python和预配置的python平台。

我很困惑。如何使我的AWSEB环境/应用程序成为python 2.7.14,即我在本地使用并且运行良好的程序?

作为参考,这里是我的代码:

from flask import Flask
# print a nice greeting.
def say_hello(username = "World"):
return '<p>Hello %s!</p>n' % username
# some bits of text for the page.
header_text = '''
<html>n<head> <title>EB Flask Test</title> </head>n<body>'''
instructions = '''
<p><em>Hint</em>: This is a RESTful web service! Append a username
to the URL (for example: <code>/Thelonious</code>) to say hello to
someone specific.</p>n'''
home_link = '<p><a href="/">Back</a></p>n'
footer_text = '</body>n</html>'
# EB looks for an 'application' callable by default.
application = Flask(__name__)
# add a rule for the index page.
application.add_url_rule('/', 'index', (lambda: header_text +
say_hello() + instructions + footer_text))
# add a rule when the page is accessed with a name appended to the site
# URL.
application.add_url_rule('/<username>', 'hello', (lambda username:
header_text + say_hello(username) + home_link + footer_text))
# run the app.
if __name__ == "__main__":
# Setting debug to True enables debug output. This line should be
# removed before deploying a production app.
application.debug = True
application.run()

requirements.txt

click==6.7
Flask==1.0.2
itsdangerous==0.24
Jinja2==2.10
MarkupSafe==1.0
Werkzeug==0.14.1

我在安装AWSEB cli时遇到了路径问题,所以请将您的答案限制为使用控制台。非常感谢。

如果您的应用程序需要不同版本的平台,则需要指定使用弹性beanstall提供的机制,即通过config.yml文件。您需要创建一个符合环境/平台要求的config.yml文件,并将该文件放在应用程序基础文件夹的.eelasticbeanstall文件夹下。

你可以在这里看到config.yml的设置和格式

还有许多受支持的平台。

如何使我的aws-eb环境/应用程序成为python2.7.14

根据上述文档,您需要在config.yml文件中指定以下内容:

global:default_platform:64bit Amazon Linux 2018.03 v2.7.1运行Python 2.7

不同的配置文件有助于自定义EB配置/环境。点击此处了解更多

最新更新