Docker 无法启动Elastic Beanstalk多容器实例
我的dockrun.aws.jsonDocker 无法启动Elastic Beanstalk多容器实例,docker,amazon-elastic-beanstalk,Docker,Amazon Elastic Beanstalk,我的dockrun.aws.json { "AWSEBDockerrunVersion": 2, "Authintication": { "Bucket": "abc", "key": "config.json" }, "containerDefinitions": [ { "name": "data", "image": "id.dkr.ecr.eu-west-2.amazonaws.com/dbdata:latest",
{
"AWSEBDockerrunVersion": 2,
"Authintication": {
"Bucket": "abc",
"key": "config.json"
},
"containerDefinitions": [
{
"name": "data",
"image": "id.dkr.ecr.eu-west-2.amazonaws.com/dbdata:latest",
"essential": false,
"memory": 512,
"command" : [
"/bin/bash"
]
},
{
"name": "codebase",
"image": "id.dkr.ecr.eu-west-2.amazonaws.com/codebase:latest",
"essential": false,
"memory": 512,
"command" : [
"/bin/bash"
]
},
{
"name": "postgres",
"image": "id.dkr.ecr.eu-west-2.amazonaws.com/postgres:latest",
"essential": true,
"memory": 1024,
"volumesFrom": [
{
"sourceContainer": "data"
}
],
"portMappings": [
{
"hostPort": 5432,
"containerPort": 5432
}
],
"links": [
"data"
]
},
{
"name": "boxer-api",
"image": "id.dkr.ecr.eu-west-2.amazonaws.com/boxer-api:latest",
"essential": true,
"memory": 1024,
"volumesFrom": [
{
"sourceContainer": "codebase"
}
],
"portMappings": [
{
"hostPort": 8080,
"containerPort": 8080
}
],
"links": [
"codebase",
"postgres",
"data"
]
}
]
}
错误eb-activity.log
[2017-04-05T08:29:00.728Z]信息[3738]-[应用程序部署]
首先
Release@1/StartupStage1/AppDeployment/02更新凭据。sh]:
正在开始活动。。。[2017-04-05T08:29:00.913Z]信息[3738]-
[首先部署应用程序]
Release@1/StartupStage1/AppDeployment/02更新凭据。sh]:
已完成的活动。[2017-04-05T08:29:00.914Z]信息[3738]-
[首先部署应用程序]
Release@1/StartupStage1/AppDeployment/03启动任务.sh]:启动
活动。。。[2017-04-05T08:30:37.520Z]信息[3738]-[Application deployment FirstRelease@1/StartupStage1/AppDeployment/03启动任务.sh]:活动
执行失败,因为:+/opt/elasticbeanstalk/hooks/common.sh+RETRY=0+initctl start eb ecs eb_EVENT_FILE=/tmp/eventsfile20170405-3738-17c2sc0 initctl:Job 无法启动+'['-f/etc/elasticbeanstalk/.eb ecs启动不重试']'+warn'无法启动ecs任务,正在重试…'+echo'无法启动ecs任务,正在重试…'无法启动ecs任务,正在重试…+eventHelper.py--msg“无法启动ECS任务,正在重试…” --严重性警告+重试=1+睡眠3+'['1-gt 1']'+初始化CTL启动eb ecs EB_EVENT_FILE=/tmp/eventsfile20170405-3738-17c2sc0 initctl:作业启动失败+'['-f/etc/elasticbeanstalk/.EB ecs start no retry']+-warn'启动ecs任务失败,重试…'+echo'启动ecs任务失败,重试…'启动ecs任务失败,重试…+eventHelper.py--msg“无法启动ECS任务,正在重试…”--severity WARN+RETRY=2+sleep 3+'['2-gt 1']'+error_exit“无法在重试2次后启动ECS任务。”1+error“无法在重试2次后启动ECS任务”。+echo“无法在重试2次后启动ECS任务”。启动失败 重试2次后的ECS任务+eventHelper.py--msg“重试2次后无法启动ECS任务”-严重性错误+退出1 (ElasticBeanstalk::ExternalInvocationError)由以下原因引起:+/opt/elasticbeanstalk/hooks/common.sh+RETRY=0+initctl start eb ecs eb_EVENT_FILE=/tmp/eventsfile20170405-3738-17c2sc0 initctl:Job无法启动+'['-f/etc/elasticbeanstalk/.eb ecs start no RETRY']']++warn'无法启动ecs任务,重试…+echo'无法启动ecs任务,重试…',重试…+eventHelper.py--msg“无法启动ECS任务,正在重试…”--严重性警告+重试=1+睡眠3+'['1-gt 1']'+初始化CTL启动eb ECS EB_EVENT_FILE=/tmp/eventsfile20170405-3738-17c2sc0 initctl:作业启动失败+'['-f/etc/elasticbeanstalk/.EB ecs start no retry']+-warn'启动ecs任务失败,重试…'+echo'启动ecs任务失败,重试…'启动ecs任务失败,重试…+eventHelper.py--msg“无法启动ECS任务,正在重试…”--severity WARN+RETRY=2+sleep 3+'['2-gt 1']'+error_exit“无法在重试2次后启动ECS任务。”1+error“无法在重试2次后启动ECS任务”。+echo“无法在重试2次后启动ECS任务”。启动失败 重试2次后的ECS任务+eventHelper.py--msg“重试2次后无法启动ECS任务”--严重性错误+退出1(执行者::非ZeroExitStatus) ECS代理日志: 2017-04-05T09:13:11Z[信息]保存状态!module=“statemanager” 2017-04-05T09:13:11Z[INFO]完成了容器postgres的拉取(id.dkr.ecr.eu-west-2.amazonaws.com/postgres:latest)(拉取->运行)。锁获取和拉取时间为233ns 2017-04-05T09:13:11Z【关键】任务状态不良;它不是稳定状态,但没有容器想要转换module=“TaskEngine”task=“awseb-ebsBoxer-env-y9jmnnjnnm:3 arn:aws:ecs:eu-west-2:443611395156:task/f510bd3f-5b97-4fbe-af6c-61e037b08a29,状态:(无->正在运行)容器:[代码库(已停止->正在运行),postgres(已拉->正在运行),数据(已停止->正在运行),] 2017-04-05T09:13:11Z[关键]由于不良状态模块=“TaskEngine”task=“awseb-ebsBoxer-env-y9jmnnjnnm:3 arn:aws:ecs:eu-west-2:443611395156:task/f510bd3f-5b97-4fbe-af6c-61e037b08a29,状态:(无->运行)容器:[代码库(已停止->运行)、postgres(拉车)、数据(已停止运行),]“2017-04-05T09:13:11Z[信息]任务更改事件模块=“任务引擎”事件=“{TaskArn:arn:aws:ecs:eu-west-2:443611395156:Task/f510bd3f-5b97-4fbe-af6c-61e037b08a29状态:停止原因:任务:awseb-ebsBoxer-env-y9jmnnjnnnm:3 arn:aws:ecs:eu-west-2:443611395156:Task/f510bd3f-5b97-4fbe-af6c-e037b08a29,状态:(edsboxer-env)停止),容器:[停止),代码库:[停止(停止),数据(停止->停止),]}”
如果你需要更多的信息,请告诉我。在伤了我的头两天后,我终于找到了它 这是因为我的数据和代码库容器正在退出,退出代码为“0”。我将命令更改为“tail-f/bin/bash/” 之前:
{
"name": "data",
"image": "id.dkr.ecr.eu-west-2.amazonaws.com/dbdata:latest",
"essential": false,
"memory": 512,
"command" : [
"/bin/bash"
]
},
{
"name": "codebase",
"image": "id.dkr.ecr.eu-west-2.amazonaws.com/codebase:latest",
"essential": false,
"memory": 512,
"command" : [
"/bin/bash"
]
}
之后:
{
"name": "data",
"image": "id.dkr.ecr.eu-west-2.amazonaws.com/dbdata:latest",
"essential": false,
"memory": 512,
"command": [
"tail",
"-f",
"/bin/bash"
]
},
{
"name": "codebase",
"image": "id.dkr.ecr.eu-west-2.amazonaws.com/codebase:latest",
"essential": false,
"memory": 512,
"command": [
"tail",
"-f",
"/bin/bash"
]
}
我仍然不明白为什么忽略了“essential”标志!!创建的默认实例是micro。容器主机上是否有足够的内存来运行所有三个docker容器?