我已经关注了这个(https://docs.microsoft.com/en-us/azure/app-service/containers/app-service-linux-ci-cd) 教程使用我自己的 Docker 容器(托管 Angular 应用程序的 nginx 容器)设置 Azure AppService。
这种方法可以工作几个小时,但随后就开始失败。每个请求都会导致以下错误(摘自 Azure 门户中的 HTML 响应):
<h1>System.IO.IOException</h1>
<h2 class="exceptionMessage">Invalid handle to path "/home/site"</h2>
<p><strong>Description:</strong> HTTP 500.Error processing request.</p><p><strong>Details:</strong> Non-web exception. Exception origin (name of application or object): mscorlib.</p>
<div><strong>Exception stack trace:</strong></div>
<div class="details"> at System.IO.Directory.CreateDirectoriesInternal (System.String path) [0x0005e] in <4dc8ec68b0964e099af86e50301f5f3c>:0
at System.IO.Directory.CreateDirectory (System.String path) [0x0008f] in <4dc8ec68b0964e099af86e50301f5f3c>:0
at System.IO.DirectoryInfo.Create () [0x00000] in <4dc8ec68b0964e099af86e50301f5f3c>:0
at (wrapper remoting-invoke-with
我的解决方法是从我的 AppService 实例的 Docker 菜单中禁用“持续部署”,删除 Webhook,然后重新启用“持续部署”,有时我还必须重新启动实例。然后它再次运行并从容器存储库中提取最新版本,然后再次开始失败。我正在使用门户中的 Webhook Ping 来确定它是否有效。
由于我是 Azure 新手,我不知道从哪里开始解决此错误。