3

我正试图通过Elastic Beanstalk与AWS托管Docker应用程序。在手动创建环境时,我可以选择在环境中运行示例应用程序,上传自己的应用程序,或从s3中取出应用程序。通过上传带有所有必要配置的Dockerrun.aws.json文件,该环境能够拉动并运行我的Docker镜像。如何使用Terraform为AWS指定Dockerrun.aws.json

现在我正在使用Terraform以编程方式创建和配置这些环境。但是,在创建时,它们都会运行示例应用程序,这反过来会在尝试将Dockerrun文件手动上载到环境时导致问题。

在Terraform配置中包含Dockerrun信息的正确方法是什么,所以我的应用程序可以毫无困难地进行部署?

回答

0

您应该使用S3存储区来存储Dockerrun.aws.json并设置Beanstalk应用程序版本。

喜欢的东西:

resource "aws_elastic_beanstalk_application_version" "latest" { 
  name        = "latest" 
  application = "your_app" 
  bucket      = "your_bucket" 
  key         = "Dockerrun.aws.json" 
} 

然后添加到您的魔豆环境:

version_label = "${aws_elastic_beanstalk_application_version.latest.name}" 

当然是越多越好,而不是使用硬编码名称引用。

相关问题