想来,对docker的学习和实践,已经一年有余了,而我关于这样的文章,只有为数不多的几篇。今天借使用docker中发生的一种异常情况为例,写此篇幅。
这个是在centos7.0 、.netcore2.1的环境基础上进行的。这里没有使用dockerfile配置文件的形式,而是直接采用docker命令的形式。
镜像采用的是docker.io/microsoft/dotnet 。
然后运行镜像
docker run -d --privileged=true -v /app:/app -p 5000:5000 bde01d9ed6eb dotnet /app/WebApplication1.dll
这样,运行其镜像,理论上是可以的,但是curl访问的时候,就出现了标题所示的问题。
connection reset by peer
想必是网络问题,诸如防火墙、端口映射之类的问题。
百度,必应一下:结果令人失望。
思前想后,不要把问题复杂化了,切换网络吧,docker run的--net命令
docker run -d --net="host" --privileged=true -v /app:/app -p 5000:5000 bde01d9ed6eb dotnet /app/WebApplication1.dll
这样容器启动后,访问测试:
curl http://localhost:5000