Я хочу запустить многоконтейнер Docker на Elastic Beanstalk (EBS) с помощью canformation.
Из того, что я понял из этого doc , я узнал, что я создал образ докера. Нажмите на это к ECR. Затем создайте Dockerrun.aws.json
в корне моего проекта. Затем свяжите путь ECR в файле Dorckerrun.aws.json
. ... и все?
Итак, я создал образ докера и перенес его в 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"
}
]
}
]
}
Но мне было интересно, как запустить это в облачной информации? Я предполагаю, что я должен определить EBS в шаблоне облачной информации (yaml) и где-то ссылаться на ресурс Dockerrun.aws.json
. Если так, то как? Я не нашел шаблон для этой цели (только для контейнера с одним докером).