首页 >后端开发 >Golang >为什么我的 Docker 容器在访问其映射端口时会抛出'接收失败:连接由对等方重置”?

为什么我的 Docker 容器在访问其映射端口时会抛出'接收失败:连接由对等方重置”?

Patricia Arquette
Patricia Arquette原创
2024-12-02 10:54:12134浏览

Why Does My Docker Container Throw

Docker 端口暴露问题:了解“接收失败:连接由对等方重置”错误

尝试在Docker 容器并通过其映射端口访问它,您可能会遇到“Recv failure: Connection Reset by Peer”错误。这表明端口映射或应用程序的内部配置存在问题。

当应用程序为其 gRPC 侦听端点指定“localhost:8081”等 IP 地址时,就会出现此问题。在容器内运行时,此设置仅允许来自容器本身内部的连接。

解决方案:使用主机范围监听

要解决此问题,您应该配置您的应用程序绑定到所有可用的主机接口,而不是“localhost”。这可以通过简单地在监听调用中省略 IP 地址来实现:

http.ListenAndServe(":8081", nil)

通过这样做,应用程序开始监听端口 8081 的所有接口,允许来自容器内部和外部的连接。这解决了问题并允许对您的 gRPC 端点进行外部访问。

以上是为什么我的 Docker 容器在访问其映射端口时会抛出'接收失败:连接由对等方重置”?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn