2

我有一个用 PHP 构建的 Web 应用程序平台,由多个应用程序组成,这些应用程序位于不同的 Git 存储库中。

据我了解,您只能运行一个 AWS Elastic Beanstalk,并提供一个 Git 存储库。

有什么方法可以运行一个来自多个 Git 存储库的 EB 环境?

4

3 回答 3

2

从那以后,我发现这是不可能的。AWS 仅允许在任何时候将一个 Git 存储库部署到 EB 环境。

Git 子模块可能是问题的答案,但我不同意。

幸运的是,AWS 提供了另一种半托管解决方案:AWS OpsWorks。

对于其他在我上面做的同样问题上苦苦挣扎的人,那么你绝对应该尝试一下。

http://aws.amazon.com/opsworks/

于 2013-03-23T13:15:03.477 回答
2

嗯,Elastic beanstalk 提供了借助配置文件自定义环境的能力。在此处查看详细信息:http: //docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers.html

如果您需要从不同的 github 存储库中拉取您的应用程序,您可以通过以下方式执行:使用引导脚本创建配置文件,该文件将从您的 github 存储库中拉取应用程序,而不是通过 git aws.push 发布。

你知道 git aws.push 是如何工作的吗?此命令将源推送到 aws 服务,并使用您的源创建 zip 文件,然后将其放在 s3 存储桶上。然后调用环境更新并提供指向 s3 存储桶的链接。

也可以将您的项目拉到本地。然后在 .ebextensions 中创建包含源代码和脚本的 zip 包,用于部署您的应用程序。

于 2013-03-23T15:51:14.840 回答
1

老问题,但我正在回复有人从谷歌绊倒,就像我一样。

我发现解决此问题的一种方法是自己构建要上传到 AWS Elelastic Beanstalk 的 .zip 包,并配置 EB CLI 以使用它。这是相关的文档:

http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb-cli3-configuration.html#eb-cli3-artifact

您可以有一个简单的脚本来运行 git 存档,将所有这些合并到一个 .zip 文件中,因为您的项目需要它(或运行您可能需要的任何构建过程),然后部署它。

于 2015-09-30T15:13:43.267 回答