我使用公用容器按照指令here创建了以下简单的Dockerrun文件,该文件成功运行了一个实例。
{
"AWSEBDockerrunVersion": "1",
"Image": {
"Name": "sbeam/influxdb",
"Update": "true"
},
"Ports": [
{
"ContainerPort": "8086"
}
],
"Volumes": [
{
"HostDirectory": "/data",
"ContainerDirectory": "/data"
}
]
}
但是我希望将
/data
目录作为某个EBS卷安装在EC2实例中。我发现答案(here和here)表明需要.ebextensions
,但是由于我没有为容器上传.zip图像,这怎么可能?是否需要下载Docker容器,添加.ebextensions
目录,zip并重新上传?
最佳答案
您将必须遵循选项3:“创建一个.zip文件,其中包含您的应用程序文件,任何应用程序文件依赖项,Dockerfile和Dockerrun.aws.json文件。”如your first link中所述。
就您而言,.zip文件只能包含Dockerrun.aws.json和.ebextensions文件夹。
为了将EBS卷附加到您的实例,可以查看以下文章:http://blogs.aws.amazon.com/application-management/post/Tx224DU59IG3OR9/Customize-Ephemeral-and-EBS-Volumes-in-Elastic-Beanstalk-Environments。它会为您提供有关.config文件内容的指示,该文件位于.ebextensions文件夹中
关于amazon-web-services - 如何仅使用Dockerrun.aws.json在ElasticBeanstalk Docker容器中装载卷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27392611/