我们正在 Docker 容器中运行适用于 Linux 的应用服务。
当事情运转时,它们运转得非常好。但是,有时我们的网站会因不明原因而无法使用。 我们的健康状况报告如下所示:
现在,一段时间后,该应用程序变得完全不可用。健康检查报告可用,但在 Docker 日志中我们发现如下记录:
2017-11-18 08:01:50.060 ERROR - Container for --- site ---is unhealthy. Stopping site.
2017-11-18 08:32:49.295 INFO - Issuing docker login to sever: http://---
2017-11-18 08:32:49.837 INFO - docker login to http://--- succeeded
2017-11-18 08:32:49.858 INFO - Issuing docker pull ---
2017-11-18 08:39:49.096 INFO - docker pull returned STDOUT>> 40: Pulling from ---
唯一有帮助的是重新启动应用程序。然后一切恢复正常,一切按预期工作。
我强调,网站不会卡在健康检查的每一个“不可用”报告上。它随机悬挂。 CPU/内存处于正常水平,没有任何异常,也没有疯狂的峰值。
应用程序本身具有常规异常过滤器,并且不会有未捕获的异常退出应用程序。
知道为什么会发生这种情况吗?
最佳答案
根据 Docker 镜像的站点,应用程序在拉取和初始化新镜像时会脱机。我注意到我们的部署花了近 20 分钟才恢复。
关于azure - 应用服务因未知原因不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47364588/