当前位置: 首页 > news >正文

如何彻底解决Docker Desktop中Kubernetes无法启动问题

我们时常会遇到Kubernetes启动提示如下报错信息:

{"message":"starting kubernetes: pulling images: pulling from host: pulling tag \"registry.k8s.io/etcd:3.5.16-0\": Error response from daemon: .

Log in with your Docker ID or email address.
If you don't have a Docker ID, head over to https://hub.docker.com/ to create one.

Using a SOCKS proxy requires a Business Subscription. Learn more at https://www.docker.com/pricing/"}

🔍 问题分析:

Docker设置了 代理(Proxy),而Docker Desktop免费版不允许使用 SOCKS代理
我的Docker 拉取 Kubernetes 官方镜像(registry.k8s.io/etcd:3.5.16-0)时,通过当前设置的SOCKS代理,导致出现上述报错。

  • Docker Desktop免费版不支持使用SOCKS代理
  • Kubernetes镜像默认在国外的镜像仓库中,中国大陆用户默认网络条件难以拉取成功。

🚩 如何彻底解决该问题:

你需要关闭 Docker Desktop 中的SOCKS代理设置,改用国内镜像源手动拉取镜像,从而绕开网络限制,顺利启动 Kubernetes。


✅ 解决步骤:

⚡️ 第一步:关闭 Docker Desktop 的代理设置

  • 打开 Docker Desktop → Settings → Resources → Proxies
  • 检查并确保所有代理项 (HTTP, HTTPS, SOCKS) 均为空(不使用代理)
  • 点击【Apply & Restart】重启Docker。

🚧 第二步:手动拉取 Kubernetes镜像(从国内镜像源拉取)

打开终端(PowerShell或CMD),复制执行如下命令:

# 设定K8S版本
$K8S_VERSION="v1.32.2"
$ETCD_VERSION="3.5.16-0"
$COREDNS_VERSION="v1.11.1"
$PAUSE_VERSION="3.9"

# 从阿里云拉取镜像(速度快、稳定)
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:$K8S_VERSION
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:$K8S_VERSION
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:$K8S_VERSION
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:$K8S_VERSION
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:$PAUSE_VERSION
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:$ETCD_VERSION
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:$COREDNS_VERSION

🚀 第三步:对拉取的镜像重新打Tag(非常关键)

在终端执行以下命令:

docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:$K8S_VERSION registry.k8s.io/kube-apiserver:$K8S_VERSION

docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:$K8S_VERSION registry.k8s.io/kube-controller-manager:$K8S_VERSION

docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:$K8S_VERSION registry.k8s.io/kube-scheduler:$K8S_VERSION

docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:$K8S_VERSION registry.k8s.io/kube-proxy:$K8S_VERSION

docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/pause:$PAUSE_VERSION registry.k8s.io/pause:$PAUSE_VERSION

docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:$ETCD_VERSION registry.k8s.io/etcd:$ETCD_VERSION

docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:$COREDNS_VERSION registry.k8s.io/coredns/coredns:$COREDNS_VERSION

这样 Docker Desktop 在启动 Kubernetes 时,就不会再去国外拉取镜像,而是直接使用本地已经拉取的镜像。


🔄 第四步:重启 Kubernetes 集群

在Docker Desktop界面:

  • 进入 Settings → Kubernetes
  • 点击 【Reset Cluster】 重置Kubernetes集群。
  • 确认后,Docker Desktop将使用本地已存在的镜像迅速完成Kubernetes集群的启动。

🎯 第五步:验证 Kubernetes 是否正常启动

终端执行:

kubectl get nodes

正常情况下,将输出类似:

NAME             STATUS   ROLES           AGE   VERSION
docker-desktop   Ready    control-plane   1m    v1.32.2

📌 核心问题总结:

  • 问题根本原因是Docker Desktop 免费版不支持使用SOCKS代理。
  • 解决方案为关闭代理并手动拉取镜像
  • 国内网络条件下,请务必使用阿里云等国内镜像拉取Kubernetes镜像。
  • 手动拉取镜像后,通过 docker tag 命令替换默认镜像名,即可快速解决此问题。

相关文章:

  • 【RabbitMQ】RabbitMQ的基本架构是什么?包括哪些核心组件?
  • 建筑安全员考试:“时间管理” 关键词统筹的备考规划
  • 考研课程安排(自用)
  • Ubuntu 系统安装 Redis 的详细步骤
  • 一键部署 GPU Kind 集群,体验 vLLM 极速推理
  • CUDA 学习(2)——CUDA 介绍
  • 三层网络 (服务器1 和 服务器2 在不同网段)
  • MATLAB 绘制空间分布图 方法总结
  • 蓝桥杯算法精讲:二分查找实战与变种解析
  • CentOS 7扩容 /dev/shm
  • MyBatis-Plus的加载和初始化
  • macOS 使用 iconv 转化文件编码
  • C#里使用libxl来对列或行进行分组显示
  • CTF题目 《FinalSQL》(极客大挑战 2019)WriteUp
  • idea接入 AI 编程助手:Copilot
  • KiLog2MaximumIncrement的由来和KiMaximumIncrementReciprocal的由来
  • 策略模式 vs. 工厂模式:对比与分析
  • 15:视图
  • T113-i开发板的休眠与RTC定时唤醒指南
  • git | 回退版本 并保存当前修改到stash,在进行整合。[git checkout | git stash 等方法 ]
  • 巴基斯坦称未违反停火协议
  • 竞彩湃|德甲欧冠资格竞争白热化,伯恩茅斯主场迎恶战
  • 江苏省委社会工作部部长等多人拟在省志愿服务联合会任职
  • 印度最新发声:对所有敌对行动均予以反击和回应,不会升级冲突
  • 公示!17个新职业、42个新工种亮相
  • 中国德国商会报告:76%在华德企受美国关税影响,但对华投资战略依然稳固