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

Ubuntu虚拟机无法连接Mac上Docker Desktop的Kubernetes集群

Docker Desktop Kubernetes跨机器连接拒绝问题解决

问题根源

不是直接复制kubeconfig文件导致的问题,核心原因是Docker Desktop默认的Kubernetes API Server仅监听本地回环地址(127.0.0.1),即使设备B能ping通设备A的局域网IP,也无法访问6443端口。另外,默认kubeconfig中的server字段指向本地域名kubernetes.docker.internal,设备B无法解析该域名,这也是连接失败的原因之一。

解决步骤

1. 调整Docker Desktop的Kubernetes监听设置

  • 打开Docker Desktop,点击右上角设置图标 → 进入Kubernetes选项卡
  • 点击「Edit Kubernetes yaml」(开启高级设置后可见),找到kube-apiserver的启动参数部分,添加以下两行:
    - --bind-address=0.0.0.0
    - --advertise-address=192.168.2.152
    
  • 保存配置,Docker Desktop会自动重启Kubernetes集群,等待集群状态恢复正常。

2. 修改kubeconfig文件

  • 在设备A上打开~/.kube/config,找到clusters节点下的server字段,将原有值(通常是https://kubernetes.docker.internal:6443)修改为:
    https://192.168.2.152:6443
    
  • 将修改后的kubeconfig文件重新复制到设备B的~/.kube/config路径下(或覆盖原有文件)。

3. 验证连接与防火墙检查

  • 在设备B上执行kubectl get nodes,确认是否能正常获取节点信息。
  • 如果仍然失败,检查设备A的防火墙设置:确保允许6443端口的入站连接(Mac上可在「系统设置→网络→防火墙」中添加Docker Desktop的允许规则)。

结论

不需要重新生成配置文件,只需调整Docker Desktop的Kubernetes监听参数和kubeconfig中的server地址即可解决连接拒绝问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 23:00:57