C# 绑定到Heroku dynamic$端口并不断出错?
我一直从heroku日志中得到这个错误: 错误R10(启动超时)->Web进程在启动后60秒内绑定到$PORT失败 我有一个ASP.NET Core 2.1应用程序,我正试图部署到Heroku。这是我在启动时所做的:C# 绑定到Heroku dynamic$端口并不断出错?,c#,docker,asp.net-core,heroku,C#,Docker,Asp.net Core,Heroku,我一直从heroku日志中得到这个错误: 错误R10(启动超时)->Web进程在启动后60秒内绑定到$PORT失败 我有一个ASP.NET Core 2.1应用程序,我正试图部署到Heroku。这是我在启动时所做的: if (!int.TryParse(Environment.GetEnvironmentVariable("PORT"), out var port)) { port = 5000; } return WebHost .CreateDefaultBuilder(args)
if (!int.TryParse(Environment.GetEnvironmentVariable("PORT"), out var port))
{ port = 5000; }
return WebHost
.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseKestrel(options =>
{
options.Listen(IPAddress.Loopback, port);
});
我可以看到应用程序启动正常,甚至可以看到它成功绑定到http://127.0.0.1:48684
这意味着它正在获取$PORT
,但在请求时,我得到了上述错误。我不能使用EXPOSE$PORT
,因为它是在运行时给出的
这件事我已经纠结了一段时间了。任何帮助都将不胜感激 几分钟后,我发现这个问题解决了我的问题。我将侦听选项更改为
options.listen(IPAddress.Any,port)代码>
if(!int.TryParse(Environment.GetEnvironmentVariable(“端口”),out var PORT))
{port=5000;}
返回网络主机
.CreateDefaultBuilder(args)
.UseStartup()
.UseKestrel(选项=>
{
选项。侦听(IPAddress.Any,端口);
});
FROM microsoft/dotnet:2.1-aspnetcore-runtime
WORKDIR /app
COPY . .
ENV ASPNETCORE_ENVIRONMENT=Production
CMD dotnet MyApp.dll
if (!int.TryParse(Environment.GetEnvironmentVariable("PORT"), out var port))
{ port = 5000; }
return WebHost
.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseKestrel(options =>
{
options.Listen(IPAddress.Any, port);
});