python - 使用 Python 在 Mac OS 上与 docker 内的服务器的 TCP 连接上客户端的管道损坏
问题描述
我有一个 client.py 将数据发送到(server_ip,60000)。接收数据的服务器端代码位于 docker 容器内。代码在 Python 中,服务器在 Mac OS 上运行。在迁移到 docker 之前,我可以成功传输数据。在对 server.py 代码进行 dockerizing 之后,会发生绑定,但是 client.py atconnection.sendall(out)
说:
socket.error: [Errno 32] Broken pipe
这是我的 docker-compose.yml:
version: '2'
services:
server:
build: ./server
ports:
- server_IP:60000:60000
这是 server.py 中的绑定:
port = 60000
host = "localhost"
知道为什么会这样吗?
解决方案
好吧,我可以通过在 docker 内将服务器端的主机设置为 0.0.0.0 并删除-重建图像来修复它。一切正常。
推荐阅读
- sql - 检查字符串是否存在子字符串
- python - 如何检查 3 列是否相同,如果值相同,如何添加一个新列?
- r - 如何使用闪亮在交互式 html 报告中显示两个数据输出
- javascript - 电子:NodeJS 'net' 模块返回空对象
- r - 为什么随机效应估计器不正确
- vue.js - 为什么在 vuejs 应用程序中,vuejs 应用程序中的 prefer-const 规则没有被禁用?
- amazon-web-services - 未在 AWS boto3 costExplorer get_cost_and_usage() 函数中获取总成本
- javascript - 如何使用来自 AJAX 请求的响应故意刷新或崩溃浏览器选项卡
- php - Laravel:如何从复选框中获取值以及文本输入中的值
- google-bigquery - Bigquery SQL 长文本拆分与数字