我尝试在 Swisscom Appcloud 上运行 ASP.NET Core MVC Web 应用程序。但是当我启动应用程序时,我在控制台中收到以下错误消息:
2017-01-24 14:29:53 [CELL/0] ERR Timed out after 1m0s: health check never passed.
看起来 Appcloud 无法检查我的应用程序的运行状况。我是否需要安装 Nuget-Package 或其他东西才能启动并运行它?
谢谢你的努力
我尝试在 Swisscom Appcloud 上运行 ASP.NET Core MVC Web 应用程序。但是当我启动应用程序时,我在控制台中收到以下错误消息:
2017-01-24 14:29:53 [CELL/0] ERR Timed out after 1m0s: health check never passed.
看起来 Appcloud 无法检查我的应用程序的运行状况。我是否需要安装 Nuget-Package 或其他东西才能启动并运行它?
谢谢你的努力
正如 gsmachado 已经提到的,您必须侦听特定端口。
.NET Core buildpack 会自动配置应用程序 Web 服务器,因此您不必自己处理。但是您必须以允许 buildpack 通过命令行将此信息传递到您的应用程序的方式来准备您的应用程序。
buildpack 将使用以下命令启动您的应用程序:
$ dotnet run --server.urls http://0.0.0.0:${PORT}
因此,您必须将命令行添加为配置提供程序,然后添加 UseConfiguration 扩展以将配置传递给 WebHostBuilder
例如:
var config = new ConfigurationBuilder()
.AddCommandLine(args)
.Build();
var host = new WebHostBuilder()
.UseKestrel()
.UseConfiguration(config)
.UseStartup<Startup>()
.Build();