Docker 端口暴露问题:解决“接收失败:连接由对等方重置”
尝试在 Docker 中运行 Go 应用程序二进制文件时容器中,用户可能会遇到应用无法接收外部连接的问题。该错误表现为调用curl命令时出现“Recv failure: Connection Reset by Peer”。
此问题的根源在于容器的网络配置。当应用程序在容器内执行时,通常使用以下命令:
http.ListenAndServe("localhost:8081", nil)
但是,此配置仅允许建立连接从容器本身内部。要解决此问题并启用对应用程序的外部访问,应将命令修改为:
http.ListenAndServe(":8081", nil)
通过省略“localhost”前缀,该应用程序向来自容器内部和外部的连接开放。此修改允许在 Docker 环境中运行时与应用程序进行正确的外部通信。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3