我有一个 Windows 容器作为 Azure Web 应用程序,它与容器外部的 WCF 服务有一个连接,当我在本地测试容器的功能时它可以工作,但在 Azure 中却不行。
我在容器内的应用程序中有一个日志文件。它说:无法解析远程名称:'XXXXXX.azurewebsites.net' <- 这是 WCF 服务
我努力了:
- 在 azure 上使用应用程序设置设置 DNS 8.8.8.8 [没有任何变化]
- Ping google.com [失败]
有任何想法吗?
谢谢您的帮助!
我有一个 Windows 容器作为 Azure Web 应用程序,它与容器外部的 WCF 服务有一个连接,当我在本地测试容器的功能时它可以工作,但在 Azure 中却不行。
我在容器内的应用程序中有一个日志文件。它说:无法解析远程名称:'XXXXXX.azurewebsites.net' <- 这是 WCF 服务
我努力了:
有任何想法吗?
谢谢您的帮助!
要在 Windows 容器应用程序中设置公共 DNS 服务器,您可以运行以下命令:
$nic = Get-NetAdapter
Set-DnsClientServerAddress -InterfaceIndex $nic.IfIndex -ServerAddresses ('8.8.8.8')
有关更多详细信息,您可以阅读本机 Windows Docker 容器的私有 DNS。
感谢@Nancy Xiong的帮助,您的回答是解决方案的一部分,我发现我需要在 windows 容器内的应用程序上应用延迟。我不知道为什么,但是当应用程序启动时容器没有网络通信。
在这个答案中, @Robbie Zhang说这是 Windows Server Core 2016 基础容器的 ACI 错误。
我猜 Azure App Service For Containers 在 Windows Server Core 2019 基础容器中也存在同样的问题。