我已经建立了一个容器并通过aws ecs fargate成功运行。容器将下载文件s3,处理并将文件上传到s3。但是由于ecs服务重启策略,该服务将重启我不需要的容器。
在Kubernetes中,我使用restartPolicy: OnFailure
,但是我已经阅读了ecs的文档,所有任务定义和服务定义。
我找到的最接近的参数是“ dockerLabels”,将设置设置为“ --restart”:“否”,但是它不起作用。
如何避免不让容器在ecs中重启?
答案 0 :(得分:1)
您所描述的内容与running ECS tasks manually or according to a schedule的用例保持一致。与使用服务调度程序运行任务不同,这些任务不会重新启动,并且非常适合一次性或定期批处理执行工作负载。您可以run a task manually from the AWS Console或使用RunTask API。任务可用于模仿Kubernetes中的Jobs和CronJobs。
Services将始终保持所需的任务数量,并且无法修改此行为:
如果您的任何任务由于任何原因而失败或停止,Amazon ECS服务调度程序都会启动您的任务定义的另一个实例来替换它,并根据所使用的调度策略来维护服务中所需的任务数。