![](/img/trans.png)
[英]Cannot connect with Docker container from inside a swarm and the host machine
[英]Cannot connect from host to .net core website inside docker container
我已经搜索过此内容,但找不到解决方案...我有一个.NET Core Web API项目,并将其容器化在Docker内部。 我的Docker主机是带有CentOS 7.5的VirtualBox中的VM。 我使用以下命令运行容器:
docker run -d -name webapi -p 80:5000 netcorelnx
然后,我可以使用以下命令:
docker exec -ti webapi /bin/bash
进入该容器并在其中执行:
curl localhost:5000/api/values
这将返回我的.NET Core Web API项目返回的正确值。 但是,当我尝试使用URL http:// localhost / api / values从主机的浏览器中调用此命令时,它显示“连接已重置”。 这是我的dockerfile:
...
FROM microsoft/dotnet:2.1-aspnetcore-runtime-bionic AS runtime
...
ENV ASPNETCORE_URLS http://+:5000
ENTRYPOINT["dotnet", "NetCoreWebApi.dll"]
怎么了?
与往常一样,经过数小时的调查并发布了问题,我找到了解决方案。 问题出在我未编写的.NET核心应用程序的代码中。 有一行:
.UseKestrel(options => { options.Listen(IPAddress.Loopback, 5000); });
代替
.UseKestrel(options => { options.Listen(IPAddress.Any, 5000); });
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.