将多个平台部署到Elastic Beanstalk(PHP/Python)

将多个平台部署到Elastic Beanstalk(PHP/Python),php,python,amazon-web-services,amazon-elastic-beanstalk,Php,Python,Amazon Web Services,Amazon Elastic Beanstalk,是否可以将多个平台部署到AWS 我有一个PHP应用程序,我也想运行一个小的python脚本 我看到PHP平台默认安装Python,但是使用eb deployAWS不会选择requirements.txt并安装依赖项 我已尝试手动安装requirements.txt,当尝试安装lxml时,它会挂起。 我还尝试添加一个配置文件: option_settings: aws:elasticbeanstalk:container:python: WSGIPath: application.py

是否可以将多个平台部署到AWS

我有一个PHP应用程序,我也想运行一个小的python脚本

我看到PHP平台默认安装Python,但是使用
eb deploy
AWS不会选择
requirements.txt
并安装依赖项

我已尝试手动安装
requirements.txt
,当尝试安装
lxml
时,它会挂起。 我还尝试添加一个配置文件:

option_settings:
  aws:elasticbeanstalk:container:python:
    WSGIPath: application.py
    NumProcesses: 3
    NumThreads: 20
但是现在
eb deploy
抱怨:

ERROR: "option_settings" in one of the configuration files failed validation. More details to follow.
ERROR: Unknown or duplicate parameter: WSGIPath                     
ERROR: Unknown or duplicate parameter: NumThreads                   
ERROR: Unknown or duplicate parameter: NumProcesses  
我相信这是因为
eb
认为这只是一个PHP应用程序


并行运行多个平台的正确方式是什么

解决方法是在部署过程中使用.ebextensions在容器中运行预安装命令,这需要

我可能建议通过docker容器并链接它们,以及使用EB docker平台。您可以在本地构建映像,然后将该docker文件提供给EB以构建映像。也许这可以帮助你开始;我想保持它的简单性,因为python非常小,不能证明它自己的服务器是合理的。是否有更好的方法在部署时运行安装脚本,以便在集群中的每台服务器上安装python依赖项?我熟悉通过.ebextensions添加配置文件,这些文件可以用于创建和运行shell脚本吗?要尝试将
requirements.txt
转换为
.ebextensions
格式,例如
包:python:python-beautifulsoup3:[]