AWS Elastic Beanstalk-如何在同一ec2实例中运行php和nodejs
我正在使用Elastic Beanstalk部署一个根应用程序(node.js),还希望运行node.js应用程序需要在同一ec2实例中调用的php代码 当我连接到实例时,它会显示: 此EC2实例由AWS Elastic Beanstalk管理。改变 如果实例被自动缩放替换,那么通过SSH的访问将丢失。 [……] 这意味着当我在AWS Elastic Beanstalk-如何在同一ec2实例中运行php和nodejs,php,node.js,amazon-web-services,amazon-ec2,amazon-elastic-beanstalk,Php,Node.js,Amazon Web Services,Amazon Ec2,Amazon Elastic Beanstalk,我正在使用Elastic Beanstalk部署一个根应用程序(node.js),还希望运行node.js应用程序需要在同一ec2实例中调用的php代码 当我连接到实例时,它会显示: 此EC2实例由AWS Elastic Beanstalk管理。改变 如果实例被自动缩放替换,那么通过SSH的访问将丢失。 [……] 这意味着当我在/var/www/文件夹(通过ssh连接)中添加php源代码时,如果实例发生更改,它将被删除 如何在同一实例node.js和php中运行?您可以探索基于ECS的多容器选项
/var/www/
文件夹(通过ssh连接)中添加php源代码时,如果实例发生更改,它将被删除
如何在同一实例node.js和php中运行?您可以探索基于ECS的多容器选项,以便在每个beanstalk环境中运行多个容器 文件:
您希望两个应用程序在同一个实例上运行有什么特殊原因吗 可能是这样的: ** 创建“.ebextensions/nodeinstall.config”文件 ** 不久前,我遇到了类似的情况,这对我很有效 资料来源:
我不能代表james发言,但我希望做同样的事情,因为我们的后端是用PHP编写的,但我们希望迁移到Node.js。通过相同的API网关运行这两种方法将有助于测试并确保迁移是值得的。除非你能想出另一种方法……如果你打算使用Elastic Beanstalk,我建议你创建两个独立的环境——一个是PHP后端,另一个是Node.js后端。您将为两个环境(或ELBs)中的每一个获得两个URL。您可以设置两个Route 53记录,以在两个环境中实现负载平衡。您可以使用加权记录来控制每个环境的流量。可以根据权重选择每个环境中的实例数。请在此处阅读有关加权记录集的更多信息:
commands:
node_install:
cwd: /tmp
command: 'yum install -y nodejs --enablerepo=epel'