使用容器重启策略重启 Amazon ECS 任务中的单个容器 - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用容器重启策略重启 Amazon ECS 任务中的单个容器

您可以为任务定义中定义的每个容器启用重启策略,以更快地解决暂时性故障并保持任务可用性。为容器启用重启策略后,Amazon ECS 可以在容器退出时重启该容器,而无需替换任务。

默认情况下,容器不会启用重启策略。为容器启用重启策略时,可以指定容器不会重启的退出代码。这些可能是表示成功的退出代码,例如退出代码 0,此类退出代码表示不需要重启。您还可以指定容器必须成功运行多长时间后才能尝试重启。有关这些参数的更多信息,请参阅 重启策略。有关指定这些值的任务定义示例,请参阅在 Amazon ECS 任务定义中指定容器重启策略

您可以使用 Amazon ECS 任务元数据端点或 CloudWatch Container Insights 来监控容器重启的次数。有关任务元数据端点的更多信息,请参阅使用 Amazon ECS 元数据监控工作负载。有关适用于 Amazon ECS 的 Container Insights 指标的更多信息,请参阅《Amazon CloudWatch 用户指南》中的 Amazon ECS Container Insights metrics

在 Fargate、Amazon EC2 实例以及使用 Amazon ECS Anywhere 的外部实例上托管的任务都支持容器重启策略。

注意事项

为容器启用重启策略时应注意以下几个方面:

  • 对于 Amazon EC2 实例上托管的任务,此功能要求您具有版本 1.86.0 或更高版本的容器代理。但是,我们建议使用最新的容器代理版本。有关如何检查您的代理版本并更新到最新版本的信息,请参阅更新 Amazon ECS 容器代理

  • 对于 Fargate 上托管的任务,此功能需要平台版本 1.4.0 或更高版本。有关信息,请参阅适用于 Amazon ECS 的 Fargate 平台版本

  • 如果在容器定义中指定了 firelensConfiguration 对象,则无法为该容器启用容器重启策略。

  • 如果具有重启策略的容器在容器实例上的 Amazon ECS 代理断开连接时退出,则该容器不会重启。