容器退出事件指示容器已停止或退出。 这些退出事件可能会显著影响容器应用的可用性、稳定性和性能。 触发这些事件的基础问题可能会导致停机时间或服务降级。 每个事件均会记录,以提供有关容器生命周期的见解,从而帮助诊断与容器执行相关的问题。
容器退出时,它可能会以非零退出代码(指示失败)或零退出代码(指示正常退出)的形式退出。 Azure记录每个退出事件,以便查看容器运行期间发生的情况。
原因
以下列表详细介绍了应用程序可能遇到容器退出事件的不同原因:
应用程序崩溃或异常:如果容器内的应用程序遇到无法恢复的错误或异常,则该错误可能会导致容器退出。 应用程序错误是容器退出事件最常见的原因之一。
内存不足(OOM)错误:如果容器消耗的内存超过分配的限制,则系统可能会由于 OOM 错误而终止容器。
容器中的退出代码不正确或配置错误:如果容器内的应用程序以非零退出代码退出,则容器可能是有意退出(但方式不当),从而指示异常终止。 此外,容器中的配置错误可能导致立即关闭容器。 影响应用的配置错误包括缺少环境变量、启动命令不正确或容器入口点无效。
应用程序终止(正常退出):容器可能会在应用程序完成其任务(例如批处理作业或一次性进程)时正常退出。 为短期任务或单用作业配置容器时,此退出条件是预期行为。
诊断
容器应用提供智能和交互式诊断体验,可帮助你对应用进行故障排除,无需配置。 使用以下步骤访问容器应用诊断。
在 Azure 门户中转到你的容器应用。
在边栏菜单中选择“ 诊断”并解决问题 。
在故障排除类别下,选择“可用性和性能”类别磁贴。
选择“容器退出事件”来诊断并排查问题。
此报告提供有关问题、可能的原因和建议解决方法的详细信息。
要查看过去 24 小时内每个修订版本的容器退出事件,请从下拉列表中选择所需的修订版本。 还可以查看容器应用在终止时报告的退出代码。
要查看每个修订的容器退出事件数,请选择“单击以显示”。