将ASP.NET Core应用程序部署到Azure App Service上的Linux系统

5
我正在使用 Azure Web 应用程序部署基于 Linux 的 ASP.NET Core 应用程序,按照 此博客文章 中的说明操作。
但是当我访问托管 URL 时出现错误 - 服务不可用 不确定是什么原因导致应用程序无法运行。
这是我从 kudu 服务获取的日志信息。
2018-01-04 12:20:05.716 错误 - 站点dotnetlinuxapp的容器dotnetlinuxapp_1已退出,导致站点无法启动 2018-01-04 12:20:18.304 信息 - 开始为站点启动容器 2018-01-04 12:20:18.305 信息 - 运行docker命令:docker run -d -p 24936:8080 --name dotnetlinuxapp_1 -e WEBSITE_SITE_NAME=DotNetLinuxApp -e WEBSITE_AUTH_ENABLED=False -e WEBSITE_ROLE_INSTANCE_ID=0 -e WEBSITE_INSTANCE_ID=fdcd5b5339be6bb353a84764edb2155ae6bb8d934d2d889b883ef65bcb729a44 -e HTTP_LOGGING_ENABLED=1 appsvc/dotnetcore:1.1.2_1709181723 /home/site/wwwroot/Meetup.Web.dll 2018-01-04 12:20:19.646 错误 - 站点dotnetlinuxapp的容器dotnetlinuxapp_1已退出,导致站点无法启动

似乎Docker镜像出了问题。不过,这里的信息不足以诊断问题。 - Chris Pratt
@ChrisPratt,这就是我在Webapp中设置Docker容器路径的方法-https://pasteboard.co/H1nexaM.png,其余的由Webapp管理。 - Jatin Parmar
你有没有查看过类似的问题 - Bruce Chen
1个回答

6
我已经审查了您的问题,并发现您引用的博客没有最新信息,导致您面临此问题。
请在输入到启动文件中的文本开头添加“dotnet”。"dotnet"将被视为命令。因此,您的启动文件将变成如下所示...

dotnet /home/site/wwwroot/{yourDLLName}.dll

enter image description here

肯定会解决你的问题,干杯!

希望这能有所帮助!


哇!你不知道我有多开心得到了你的答案!!我永远也想不到,我以为我的Azure应用程序API中的404错误与我的路由或部署问题有关。我正在使用Core 2.0,它起作用了!!谢谢你啊! - rodrigorf
对于在Linux上的.NET 5,这个修复方法同样适用,但启动命令略有不同:dotnet <dll名称>.dll - ランス

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接