Azure Linux DOTNET-ISOLATED|6.0函数启动报错,Transport endpoint未连接
Azure Linux上.NET Isolated 6.0函数启动崩溃(Transport endpoint is not connected: '/home/site/wwwroot/host.json')
问题描述
基于Azure Linux环境的DOTNET-ISOLATED|6.0运行时的函数启动时持续崩溃,报错信息如下:
System.IO.IOException : Transport endpoint is not connected : '/home/site/wwwroot/host.json' at Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo,String path,Boolean isDirectory,Func`2 errorRewriter) at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String path,OpenFlags flags,Int32 mode) at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String fullPath,FileMode mode,FileAccess access,FileShare share,FileOptions options,Int64 preallocationSize) at System.IO.Strategies.OSFileStreamStrategy..ctor(String path,FileMode mode,FileAccess access,FileShare share,FileOptions options,Int64 preallocationSize) at System.IO.Strategies.FileStreamHelpers.ChooseStrategy(FileStream fileStream,String path,FileMode mode,FileAccess access,FileShare share,Int32 bufferSize,FileOptions options,Int64 preallocationSize) at System.IO.StreamReader.ValidateArgsAndOpenPath(String path,Encoding encoding,Int32 bufferSize) at System.IO.File.InternalReadAllText(String path,Encoding encoding) at System.IO.File.ReadAllText(String path) at Microsoft.Azure.WebJobs.Script.Configuration.HostJsonFileConfigurationSource.HostJsonFileConfigurationProvider.LoadHostConfig(String configFilePath) at /src/azure-functions-host/src/WebJobs.Script/Config/HostJsonFileConfigurationSource.cs : 196 at Microsoft.Azure.WebJobs.Script.Configuration.HostJsonFileConfigurationSource.HostJsonFileConfigurationProvider.LoadHostConfigurationFile() at /src/azure-functions-host/src/WebJobs.Script/Config/HostJsonFileConfigurationSource.cs : 146 at Microsoft.Azure.WebJobs.Script.Configuration.HostJsonFileConfigurationSource.HostJsonFileConfigurationProvider.Load() at /src/azure-functions-host/src/WebJobs.Script/Config/HostJsonFileConfigurationSource.cs : 72 at Microsoft.Extensions.Configuration.ConfigurationRoot..ctor(IList`1 providers) at Microsoft.Extensions.Configuration.ConfigurationBuilder.Build() at Microsoft.Azure.WebJobs.Script.ScriptHostBuilderExtensions.<>c__DisplayClass6_0.b__2(HostBuilderContext context,IConfigurationBuilder configBuilder) at /src/azure-functions-host/src/WebJobs.Script/ScriptHostBuilderExtensions.cs : 109 at Microsoft.Extensions.Hosting.HostBuilder.BuildAppConfiguration() at Microsoft.Extensions.Hosting.HostBuilder.Build() at Microsoft.Azure.WebJobs.Script.WebHost.DefaultScriptHostBuilder.BuildHost(Boolean skipHostStartup,Boolean skipHostConfigurationParsing) at /src/azure-functions-host/src/WebJobs.Script/WebHost/DefaultScriptHostBuilder.cs : 59 at async Microsoft.Azure.WebJobs.Script.WebHost.WebJobsScriptHostService.UnsynchronizedStartHostAsync(ScriptHostStartupOperation activeOperation,Int32 attemptCount,JobHostStartupMode startupMode) at /src/azure-functions-host/src/WebJobs.Script/WebHost/WebJobsScriptHostService.cs : 275重启无法解决该问题,本地环境复现无异常,删除并重新部署App Service及函数后问题仍存在。
解决步骤
检查存储挂载状态
该错误多为App Service文件存储挂载异常导致,通过Kudu控制台执行命令检查挂载情况:df -h /home/site/wwwroot若显示挂载异常,进入Azure门户App Service的配置 > 常规设置,直接点击保存(无需修改任何配置),触发存储重新挂载。
验证host.json文件权限
通过Kudu文件管理器或SSH连接实例,检查文件权限:ls -l /home/site/wwwroot/host.json确保文件拥有者为
www-data,权限至少为644,若权限异常执行:chown www-data:www-data /home/site/wwwroot/host.json chmod 644 /home/site/wwwroot/host.json重置运行时环境
在Azure门户App Service的配置 > 常规设置中,临时将运行时堆栈切换为DOTNET-ISOLATED|7.0,保存后等待环境重置完成,再切回DOTNET-ISOLATED|6.0。通过部署槽位重置环境
创建新的部署槽位,将函数部署至槽位后执行槽位交换,彻底重置生产环境的文件系统与运行时状态。联系Azure技术支持
若以上步骤均无效,说明可能是底层Azure基础设施存储节点异常,提交支持工单并提供错误日志、App Service实例ID,请求团队排查存储问题。
内容的提问来源于stack exchange,提问作者pdx5
相关产品推荐
相关产品推荐

