我试着用AWS ECS和码头建立CI。我使用Codeship作为CI工具,但这并不重要。
我在shell脚本中执行以下步骤:
aws ecs register-task-definition --family postgraphile --cli-input-json file:///deploy/ecs-task-def.json --region us-east-2aws ecs run-task --task-definition postgraphile --cluster testcluster --region us-east-2Shell脚本成功运行,但是在尝试运行ECS任务后,我看到输出中出现了一个错误:
{
"tasks": [],
"failures": [
{
"arn": "arn:aws:ecs:us-east-2:99999999999:container-instance/050ab165-7669-45d5-8be7-d990cf4fff42",
"reason": "RESOURCE:MEMORY"
}
]
}我的ecs-task-def.json
{
"containerDefinitions": [
{
"name": "postgraphile-container",
"image": "999999999999.dkr.ecr.us-east-2.amazonaws.com/test-repository",
"memory": 500,
"essential": true,
"portMappings": [
{
"hostPort": 5000,
"containerPort": 5000
}
]
}
],
"volumes": [],
"memory": "900",
"cpu": "128",
"placementConstraints": [],
"family": "postgraphile",
"taskRoleArn": ""
}我想我已经检查了所有的内存限制..。我有遗漏什么吗?
更新:在ec2实例重新启动几次之后,我最终可以运行ecs任务,而不会出现错误。在多次运行任务后,错误将返回。
发布于 2021-11-19 22:56:10
在ECS集群上部署服务时,我收到了此错误。完全删除服务,然后重新重新部署它,帮助我解决了这个问题。
发布于 2022-02-08 18:29:23
在使用docker将服务部署到EC2时,我遇到了类似的错误。我用的是油灰,不是CLI。我运行命令docker images来获取每个图像的大小。我发现总大小超过了我的EC2实例存储空间。我将EC2实例卷增加到20 to (EC2-> volume >Modify卷)。问题解决了。后来,经过多次尝试和错误之后,我再次面临问题。这一次,我发现我有许多未使用的图像,这些图像是在多个停靠程序编写命令之后积累的。我删除了所有的容器,卷和图像,内存错误得到了解决。
https://stackoverflow.com/questions/49359324
复制相似问题