You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OSX系统连接Docker URL时2376端口报Connection refused错误求助

macOS环境socat转发Docker端口2376连接拒绝排查方案

具体报错信息:
Connection refused: /127.0.0.1:2376
java.net.ConnectException: Connection refused
Caused: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: /127.0.0.1:2376
(省略后续栈追踪内容)

上述报错本质是请求到达127.0.0.1:2376时无对应服务响应,按以下步骤逐一排查即可:

  • 检查Docker Desktop基础配置:打开Docker Desktop设置面板,进入「通用」标签,确认已勾选Expose daemon on tcp://localhost:2375 without TLS,OSX版Docker默认不开放TCP端口,未开启该选项时socat无法转发docker daemon请求。
  • 验证socat容器配置正确性:你启动socat容器的命令需符合以下规则:
    docker run -d -p 2376:2375 -v /var/run/docker.sock:/var/run/docker.sock alpine/socat tcp-listen:2375,fork,reuseaddr unix-connect:/var/run/docker.sock
    需确认端口映射规则是本地2376映射容器内2375端口,且正确挂载了本地Docker套接字文件/var/run/docker.sock,文件路径写错会直接导致转发失败。
  • 端口占用校验:执行命令lsof -i :2376,检查返回结果中PID对应的进程是否为socat容器进程,避免其他进程占用2376端口导致冲突。
  • 基础连通性测试:执行命令curl http://127.0.0.1:2376/version,如果正常返回Docker版本信息说明端口转发链路正常,问题出在Java客户端配置上;如果依然返回连接拒绝,优先重启socat容器和Docker Desktop再重试。
  • Java客户端配置校验:2376为Docker默认TLS加密端口,如果你没有配置TLS证书,Java客户端请求会被拦截,要么在客户端配置对应TLS证书(证书默认存放在~/.docker/certs.d目录),要么改为使用2375非加密端口连接。

内容的提问来源于stack exchange,提问作者willbl98

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 17:39:02