上传Flask应用程序时出现AWS Elastic Beanstalk错误

时间:2015-07-01 11:26:25

标签: amazon-web-services flask elastic-beanstalk

我最近尝试将Flask应用程序上传到AWS但是我收到一条错误说明:

  

您的requirements.txt无效。快照日志以获取详细信息。

我将测试应用程序(我在网上找到)上传到服务器,但是我自己的应用程序没有。

这就是我的requirements.txt文件:

awsebcli==3.4.5
blinker==1.3
cement==2.4.0
docker-py==1.1.0
dockerpty==0.3.4
docopt==0.6.2
Flask==0.10.1
Flask-Bcrypt==0.6.2
Flask-Mail==0.9.1
itsdangerous==0.24
Jinja2==2.7.3
jmespath==0.7.1
MarkupSafe==0.23
mercurial==3.2.4
pathspec==0.3.3
pbr==1.1.1
plyer==1.2.1
pycrypto==2.6.1
python-bcrypt==0.3.1
python-dateutil==2.4.2
PyYAML==3.11
requests==2.6.2
schedule==0.3.1
six==1.9.0
stevedore==1.5.0
texttable==0.8.3
virtualenv==12.0.4
virtualenv-clone==0.2.5
virtualenvwrapper==4.6.0
websocket-client==0.32.0
Werkzeug==0.10.1
wxPython-common==3.0.2.0

我不知道它有什么问题。我没有手动更改它或添加任何奇怪的东西。我只使用pip freeze > requirements.txt来构建它。

如何解决此问题?感谢。

修改

这些是我的系统包:

awsebcli (3.4.5)
blinker (1.3)
cement (2.4.0)
docker-py (1.1.0)
dockerpty (0.3.4)
docopt (0.6.2)
Flask (0.10.1)
Flask-Bcrypt (0.6.2)
Flask-Mail (0.9.1)
itsdangerous (0.24)
Jinja2 (2.7.3)
jmespath (0.7.1)
MarkupSafe (0.23)
mercurial (3.2.4)
pathspec (0.3.3)
pbr (1.1.1)
pip (6.0.3)
plyer (1.2.1)
pycrypto (2.6.1)
python-bcrypt (0.3.1)
python-dateutil (2.4.2)
PyYAML (3.11)
requests (2.6.2)
schedule (0.3.1)
setuptools (7.0)
six (1.9.0)
stevedore (1.5.0)
texttable (0.8.3)
virtualenv (12.0.4)
virtualenv-clone (0.2.5)
virtualenvwrapper (4.6.0)
websocket-client (0.32.0)
Werkzeug (0.10.1)

2 个答案:

答案 0 :(得分:1)

只需复制粘贴并安装代码。

wxPython-common似乎没有在pip中提供该版本。

除此之外,似乎没有任何问题。只需确保requirements.txt文件在文件的开头或结尾没有任何其他字符

答案 1 :(得分:0)

这里提到了很多系统软件包。如果您只想列出项目所需的文件,请使用命令

创建一个虚拟环境。
virtualenv --no-site-packages virt

然后使用您的虚拟环境,并通过pip或pip3 install手动安装python项目所需的库。

source virt/bin/activate // Use this to enter your virtual env

之后,只需使用代码

pip3 freeze --local > requirements.txt 

保存上传要求。