PART I
问题一
- 用docker部署一个golang 的http服务,内部监听的端口地址为: 127.0.0.1:9090, 写dockerfile的时候暴露端口 expose 9090,然后生成镜像,后面运行docker 镜像成功启动http服务,测试的时候 curl http:lcoalhost:9090/api/****,宿主机上报错 curl connection reset by peer
- 引起原因:因为服务器内部没有监听端口,而在docker run的时候却指定了该端口。根本引起的缘由是:你在本地指定了 host为localhost,只允许本机访问,这样最后导致docker 启动起来的时候 映射端口失败,导致出现connection reset by peer;
- 解决办法:将容器内部服务监听应该放在 0.0.0.0 上面
有疑问加站长微信联系(非本文作者)