【问题标题】:Azure App Service using Windows Containers fails to start使用 Windows 容器的 Azure 应用服务无法启动
【发布时间】:2023-01-04 21:33:22
【问题描述】:

我使用适用于 Windows 容器的自定义 Docker 映像创建了 Azure 应用服务。该图像在我使用 Docker Desktop 的 Windows 机器上运行良好。 但是,Azure 容器不断重启并失败。

来自 Kudo 的 Azure 部署日志:

05/04/2022 18:04:28.774 INFO - Site: app-myappdockertest1 - [6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28] - Attempting to start container
05/04/2022 18:04:46.474 INFO - Site: app-myappdockertest1 - [6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28] - Start container succeeded.
05/04/2022 18:04:52.593 INFO - Site: app-myappdockertest1 - [6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28] - Attempting to stop container: 6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28. Site app-myappdockertest1
05/04/2022 18:04:52.593 INFO - Site: app-myappdockertest1 - [6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28] - Shutdown container: 6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28
05/04/2022 18:04:52.611 INFO - Site: app-myappdockertest1 - [6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28] - Attempting to remove container: 6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28
05/04/2022 18:04:52.992 INFO - Site: app-myappdockertest1 - Purging pending logs after stopping container
05/04/2022 18:04:52.992 INFO - Site: app-myappdockertest1 - [6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28] - Container removed successfully. Container Id: 6a0179c8984360af8ceecd4730b66112335c73c54aa0ead74a2651f9f0abcc28
05/04/2022 18:04:53.003 INFO - Site: app-myappdockertest1 - Purging after container failed to start
05/04/2022 18:04:53.003 ERROR - Site: app-myappdockertest1 - Unable to start container. Error message: One or more errors occurred.

我找不到此错误的任何其他信息。想找到有关错误的详细信息吗?

该图像基于mcr.microsoft.com/dotnet/framework/wcf的最新版本。它包含在 IIS 中托管的 .NET WCF 服务


查看 AjayKumar-MSFT 提供的信息后问题的解决方案:

主要问题是我使用的是不受支持的父图像。当前版本中的图像“mcr.microsoft.com/dotnet/framework/wcf”基于“Windows Server Core 2022”,而 Microsofts supported images 需要截至 2022 年 4 月的“Windows Server Core 2019”。

我已将 Dockerfile 更改为

FROM mcr.microsoft.com/dotnet/framework/wcf:4.8-windowsservercore-ltsc2019

并能够解决问题。容器启动时没有任何错误消息。

然而,Ajay Kumar-MSFT 关于内存使用的提示也很有帮助,因为我在应用程序启动后遇到了 OutOfMemory 异常。

【问题讨论】:

    标签: azure azure-web-app-service azure-container-registry


    【解决方案1】:

    至于支持的父图像,请查看supported list

    --你总是可以获取有关错误的更多详细信息,查看日志: 导航到 https://.scm.azurewebsites.net/DebugConsole 并单击 LogFiles 文件夹以查看各个日志文件。

    --直接导航到 https://.scm.azurewebsites.net/api/logs/docker 以查看 Docker 日志的元数据。

    --您可以使用文档中列出的父图像进行测试。

    此外, 默认情况下,如果您的容器在 230 秒后没有响应,它将超时。 (可以使用 WEBSITES_CONTAINER_START_TIME_LIMIT 应用程序设置将此超时时间增加。)并增加到 1800

    【讨论】:

    • 太感谢了!我自己无法找到所有这些信息。我会解决它们并给你反馈!
    • 再次感谢!问题确实是我使用的是不受支持的父映像,因为它基于 Windows Server Core 2022 而不是 2019。我编辑了我的初始帖子并提供了解决我的问题的其他信息。
    • 很高兴知道问题已解决。感谢更新
    【解决方案2】:

    使用了以下基本图像 mcr.microsoft.com/windows/servercore:ltsc2019 这似乎已经为我解决了错误

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-19
      • 1970-01-01
      • 2021-11-30
      • 1970-01-01
      • 2016-04-18
      • 1970-01-01
      • 1970-01-01
      • 2022-10-27
      相关资源
      最近更新 更多