【发布时间】:2018-12-05 22:31:04
【问题描述】:
我想使用 canformation 在 Elastic Beanstalk (EBS) 上启动 docker multicontainer。
据我所知,doc 是我创建了 docker 映像。将其推送到 ECR。然后在我的项目的根目录下创建一个Dockerrun.aws.json。然后在Dorckerrun.aws.json 文件中链接ECR 路径。 ...就这样?
所以我创建了 docker 镜像并将其推送到 ECR。我还创建了具有相应值的Dockerrun.aws.json(有些我不太确定......例如mountPoints 和host.sourcePath 之间的区别是什么)。
{
"AWSEBDockerrunVersion": 2,
"volumes": [
{
"name": "myApplication1",
"host": {
"sourcePath": "/var/app/current/myApplication1"
}
},
{
"name": "myApplication2",
"host": {
"sourcePath": "/var/app/current/myApplication2"
}
},
{
"name": "myApplication3",
"host": {
"sourcePath": "/var/app/current/myApplication3"
}
}
],
"containerDefinitions": [
{
"name": "myApplication1",
"image": "123456789.dkr.ecr.eu-central-1.amazonaws.com/myDocker/myApplication1",
"essential": true,
"memory": 128,
"mountPoints": [
{
"sourceVolume": "????",
"containerPath": "????",
"readOnly": true
},
{
"sourceVolume": "awseb-logs-myApplication1",
"containerPath": "/var/log/myApplication1"
}
]
},
{
"name": "myApplication2",
"image": "123456789.dkr.ecr.eu-central-1.amazonaws.com/myDocker/myApplication2",
"essential": true,
"memory": 128,
"portMappings": [
{
"hostPort": 80,
"containerPort": 80
}
],
"links": [
"myApplication1", "myApplication3"
],
"mountPoints": [
{
"sourceVolume": "????",
"containerPath": "????",
"readOnly": true
},
{
"sourceVolume": "?????",
"containerPath": "????",
"readOnly": true
},
{
"sourceVolume": "awseb-logs-myApplication2",
"containerPath": "/var/log/myApplication2"
}
]
},
{
"name": "myApplication3",
"image": "123456789.dkr.ecr.eu-central-1.amazonaws.com/myDocker/myApplication3",
"essential": true,
"memory": 128,
"mountPoints": [
{
"sourceVolume": "?????",
"containerPath": "?????",
"readOnly": true
},
{
"sourceVolume": "awseb-logs-myApplication3",
"containerPath": "/var/log/myApplication3"
}
]
}
]
}
但我想知道如何在 cloudformation 中启动它?我的假设是我必须在 cloudformation 模板 (yaml) 中定义 EBS 并在某处引用资源 Dockerrun.aws.json。如果是这样,怎么做?我还没有找到用于此目的的模板(仅适用于单个 docker 容器)。
【问题讨论】:
标签: amazon-web-services docker amazon-elastic-beanstalk amazon-cloudformation