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

Docker Toolbox for Mac无法运行,遇dial tcp i/o超时等问题求助

解决Docker Toolbox for Mac连接超时(dial tcp 192.168.99.100:2376: i/o timeout)的方案

我之前也碰到过几乎一模一样的问题,折腾了好一阵才搞定,给你分享几个亲测有效的解决方案:

1. 排查VPN/代理的路由冲突

这是最常见的原因——Docker Toolbox默认使用192.168.99.x网段的VirtualBox虚拟机,很多VPN会强制把这个网段的流量走VPN隧道,导致本地无法访问虚拟机的2376端口。

  • 临时验证:先关闭所有VPN/代理,然后重启Docker Machine,看是否能正常连接。如果恢复正常,那就是路由冲突问题。
  • 手动添加路由规则:在Mac终端执行以下命令,让192.168.99.0/24网段的流量直接走本地物理网卡(把en0换成你实际联网的网卡,可通过ifconfig查看):
    sudo route -n add 192.168.99.0/24 -interface en0
    
  • VPN例外配置:打开你的VPN客户端,找到路由设置,把192.168.99.0/24加入“本地例外”列表,避免该网段流量被VPN劫持。

2. 重置Docker Machine的证书与网络配置

有时候虚拟机的证书过期或网络配置紊乱,会导致SSH能连但守护进程端口不通:

  • 停止Docker Machine:
    docker-machine stop default
    
  • 重新生成认证证书:
    docker-machine regenerate-certs default
    
  • 启动机器并重新加载环境变量:
    docker-machine start default
    eval $(docker-machine env default)
    
  • 测试连接:执行docker ps,如果能正常输出容器列表,问题就解决了。

3. 检查VirtualBox的网络配置

VirtualBox的端口转发或网卡设置异常也会导致这个问题:

  • 打开VirtualBox,找到default虚拟机,进入「设置」→「网络」。
  • 确认「网络地址转换(NAT)」的端口转发规则中,存在2376端口的映射:主机端口2376,子系统端口2376,协议选择TCP。
  • 检查「仅主机(Host-Only)网络」:确保虚拟机的IP是192.168.99.100,子网掩码255.255.255.0;同时主机端的vboxnet0网卡IP为192.168.99.1(可在VirtualBox的「全局设定」→「网络」中查看)。

4. 清理代理相关配置

系统或Docker的代理设置可能干扰连接:

  • 关闭系统全局代理(包括浏览器、第三方代理工具的代理)。
  • 检查Docker Machine的代理环境变量:执行docker-machine env default,如果输出中包含HTTP_PROXY或HTTPS_PROXY,执行以下命令清除:
    docker-machine env --unset-proxy default
    eval $(docker-machine env default)
    

终极方案:重建Docker Machine

如果以上方法都无效,可以尝试删除并重新创建default机器(记得先备份你的镜像和容器,用docker save导出镜像):

docker-machine rm default
docker-machine create --driver virtualbox default

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:16:55