Docker 端口暴露问题:解决“接收失败:连接被对等方重置”
尝试在 Docker 中运行 Go 应用程序二进制文件时容器中,用户可能会遇到应用无法接收外部连接的问题。当调用curl命令时,此错误表现为“Recv failure: Connection Reset by Peer”。
此问题的根源在于容器的网络配置。当应用程序在容器内执行时,通常使用以下命令:
http.ListenAndServe("localhost:8081", nil)
但是,此配置仅允许从容器本身内部建立连接。要解决此问题并启用对应用程序的外部访问,应将命令修改为:
http.ListenAndServe(":8081", nil)
通过省略“localhost”前缀,应用程序将自行打开来自容器内部和外部的连接。此修改允许在 Docker 环境中运行时与应用程序进行正确的外部通信。
以上是为什么我的 Go 应用程序在 Docker 容器中运行时出现'接收失败:连接被对等方重置”?的详细内容。更多信息请关注PHP中文网其他相关文章!