You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何无Docker引用的.NET Core应用发布到Azure仍被以容器启动报错

问题解答

为什么Azure仍在启动Docker容器

你观察到的Docker运行日志属于Azure Linux应用服务的正常底层实现:所有采用代码部署模式的Linux Web App,默认都会使用平台预置的标准运行时容器(你日志中用到的是官方.NET 5.0运行时镜像)承载应用,并非沿用之前的Docker部署配置,该现象无需特殊处理。

应用启动失败的原因与修复方案

报错的核心原因是启动命令中的主dll文件名包含空格,平台解析时将命令截断,误把Unistad识别为要运行的应用程序名,因此抛出找不到Unistad程序的错误。可通过以下任意一种方式修复:

  • 调整启动命令配置:进入Azure门户对应Web App的「配置」-「常规设置」页,在「启动命令」输入框中填写带引号包裹的完整启动命令:dotnet "Unistad Document Manager.dll",保存后重启应用即可生效。
  • 重命名输出dll:直接修改项目配置,将生成的主dll文件名改为不带空格的格式(例如UnistadDocumentManager.dll),重新编译发布后平台会自动识别该主文件,无需额外配置启动命令。
  • 辅助验证:可进入Web App的「高级工具(Kudu)」,查看站点wwwroot目录下的文件,确认目标dll存在且文件名匹配;同时确认Web App配置的运行时堆栈版本与项目的.NET目标版本一致。

内容的提问来源于stack exchange,提问作者Ricardo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 09:48:02