2011-03-10 62 views
3

为了保守资源(和成本),我想在同一个EC2 beanstalk实例上放置超过1个war文件(代表不同的应用程序)。同一Beanstalk实例上的几个应用程序(即战争文件)

我想接着有申请使用藁和申请乙映射到myapp.elasticbeanstalk.com/applB使用warB

但映射到myapp.elasticbeanstalk.com/applA,控制台允许你上传一个任何实例的单一和唯一的战争。

1)所以,我明白它不可能与当前接口。我对吗 ?

2)虽然可以通过“非标准”方式实现:通过接口上传warA并通过ssh,ftp等将warB复制/更新到/ tomcat6/webapps? (2),我担心的是,每当BT健康检查器决定终止实例(例如连续失败检查)并重新启动一次,B就会丢失。那么我将不得不作出warB由applA用我的定制AMI的一部分,创建这个AMI的新版本,我每次更新warB

请帮我

问候

迪迪埃

回答

3

有一种变通方法,虽然,但没有使用魔豆,但普通的EC2:

https://forums.aws.amazon.com/thread.jspa?messageID=229121

http://blog.jetztgrad.net/2011/02/how-to-customize-an-amazon-elastic-beanstalk-instance/

无耻插头:虽然没有相关的目录中,我为Maven 2创建了一个插件来自动化Beanstalk部署和Elastic MapReduce。退房http://beanstalker.ingenieux.com.br/

+0

嗨,感谢您的指点。 didier – 2011-06-28 04:24:34

+1

如果您发现它们有帮助,请立即注册。 – aldrinleal 2011-06-30 20:58:46

1

这是一个老问题,但花了一些时间才找到更新的答案,所以我想我会分享我的发现。

现在,Elastic Beanstalk本身支持多个WAR部署(并且已经有一段时间了)。

只需创建一个新的zip文件,其中包含每个WAR文件。如果您希望其中的一个在根环境中可用,那么您将像使用手动部署到Tomcat一样将ROOT.war命名为ROOT.war。

你的zip文件结构应该看起来像这样:

所有MyApplication。拉链

├──.ebextensions

├──foo.war

├──bar.war

└──ROOT.war

全部细节可以发现在Elastic Beanstalk documentation

.ebextensions文件夹是可选的,可以包含配置文件,用于自定义部署到您的环境的资源。有关使用配置文件的信息,请参阅Elastic Beanstalk Environment Configuration

相关问题