Minikube 是一个工具,它为本地环境提供了一种轻量化的 Kubernetes 集群实现。通过 Minikube,用户可以在本地机器上快速启动并运行一个 Kubernetes 环境,用来学习、测试和开发。Minikube支持Kubernetes的所有主要功能,包括Dashboard、DNS、容器运行时(如Docker、containerd、CRI-O)等。这种本地化的 Kubernetes 环境主要为开发者提供了便捷,不再需要花费额外的精力去搭建和维护一个庞大的远程集群。

1.安装 Docker Desktop

作为官方推荐的容器化平台,安装Docker Desktop能让你顺利使用Docker驱动

  • 下载与安装:访问 Docker 官网,我使用的是Mac M2,需要下载适用于 Apple Chip 的安装包并进行安装
  • 启动与验证:安装完成后,启动 Docker Desktop,并确保它在后台正常运行,状态显示为 Running

2. 安装 Minikube 和 kubectl

使用 Homebrew 可以一键安装这两个核心工具

使用 Homebrew 安装:在终端中执行以下命令:

brew install kubectl
brew install minikube


验证安装:运行以下命令,确认版本信息能正常输出:

kubectl version --client
minikube version

3. 启动你的 Kubernetes 集群

启动命令是最关键的一步。对于国内的网络环境,强烈建议配置阿里云的镜像加速,这能显著提升启动速度和成功率。

推荐方案:使用 Docker 驱动 + 阿里云镜像/dl.k8s.io加速:使用以下命令启动 Minikube:

docker配置使用国内镜像源后可直接运行
minikube start --driver=docker

可以手动指定其他源可尝试多次下载
minikube start --driver=docker --kubernetes-version='v1.35.1' --binary-mirror='https://dl.k8s.io'

如出现下载失败或者下载超时可采用以下方式彻底清除现有集群和缓存然后重新执行上面的命令进行下载
minikube delete --all --purge
rm -rf ~/.minikube   # 可选彻底清理残留配置

4.验证并开始使用

minikube status
kubectl get nodes

如果看到节点状态为 Ready,就说明你的单节点 Kubernetes 集群已经成功运行了

5. (可选) 启用 Minikube 插件

Minikube 提供了许多插件来扩展功能,最常用的是仪表盘(Dashboard)。

启用仪表盘 (Dashboard):执行以下命令,浏览器将自动打开 Kubernetes 的 Web UI 界面,方便你直观地管理集群。

minikube addons enable dashboard
启用可能会失败
# 拉取 dashboard 镜像
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/dashboard:v2.7.0

# 拉取 metrics-scraper 镜像
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-scraper:v1.0.8

将拉取下来的国内镜像标记为 Kubernetes 期望的官方镜像名
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/dashboard:v2.7.0 kubernetes/dashboard:v2.7.0

docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-scraper:v1.0.8 kubernetes/metrics-scraper:v1.0.8

删除失败的 Pod让它们重新创建
kubectl delete pod -n kubernetes-dashboard --all

kubectl get pods -n kubernetes-dashboard

minikube dashboard


更多插件:执行 minikube addons list 可以查看所有可用插件,例如 ingress 用于管理入站网络流量。

🧪 测试集群:部署一个 Nginx 应用

为了验证集群功能,可以尝试部署一个简单的 Nginx 应用

  1. 创建 Nginx Deployment
kubectl create deployment nginx --image=nginx:alpine

2.创建一个 Service 来暴露应用

kubectl expose deployment nginx --type=NodePort --port=80

3.获取访问地址:运行以下命令获取服务的访问 URL,然后在浏览器中打开它,就能看到 Nginx 的欢迎页面了。

minikube service nginx --url

4.清理测试资源:测试完成后,可以删除 Deployment 和 Service 来释放资源。

kubectl delete service nginx
kubectl delete deployment nginx

常用 Minikube 命令
停止集群: minikube stop (保留数据释放 CPU/内存)
暂停集群: minikube pause (快速暂停)
删除集群: minikube delete (彻底删除数据)
查看 Dashboard: minikube dashboard (打开 Web 界面)
查看插件列表: minikube addons list