使用EB部署管理多个AWS账户

时间:2015-05-27 15:14:03

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

我正在为两家不同的公司开展两个不同的项目。他们每个人都允许我访问他们的AWS管理控制台来部署Ruby应用程序。我正在Mac OS / X上编写代码。

我看不到在哪里更改eb命令的配置以指向不同的帐户。我做了eb init,但它似乎指向同一个AWS账户并在该账户上创建应用程序和服务器实例。当为两个不同的项目使用两个不同的AWS账户并尝试使用eb命令进行部署时,有人可以帮助或指导我说明吗?

2 个答案:

答案 0 :(得分:3)

配置数据应存储在~/.aws/config

您可以维护两个不同的配置文件,并在部署之前简单地交换它们。如果你整天工作一天然后整天工作,这将很容易,但如果你在一天之间切换可能会让人感到困惑。

在运行eb init之前,您可以编写一个简单的脚本来交换它们。

由于您将Ruby列为您的语言,因此我发现了这个简洁的内容,正是您所需要的。 http://jtimberman.housepub.org/blog/2013/10/19/managing-multiple-aws-account-credentials/

答案 1 :(得分:2)

执行此操作的正确方法是使用“命名配置文件”。例如,假设您拥有工作/默认AWS账户以及个人AWS账户。

修改~/.aws/credentials,如下所示:

[default]
aws_access_key_id = abcd1234KEY1
aws_secret_access_key = abcd1234SECRET1

[personal]
aws_access_key_id = efghij6789KEY2
aws_secret_access_key = efghij6789SECRET2    

然后使用eb init --profile personal来使用您的个人帐户。

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