minikube start
minikube 是本地 Kubernetes,专注于让学习和开发 Kubernetes 变得容易。
您只需要 Docker(或类似的兼容)容器或虚拟机环境,Kubernetes 就可以通过一个命令启动: minikube start
您需要什么
- 2 个 CPU 或更多
- 2GB 内存空间
- 20GB 磁盘空间
- 互联网连接
- 容器或虚拟机管理器,例如: Docker、QEMU、Hyperkit、Hyper-V、KVM、Parallels、Podman、VirtualBox 或 VMware Fusion/Workstation
1安装
点击描述您目标平台的按钮。对于其他架构,请参阅 发布页面 以获取 minikube 二进制文件的完整列表。
使用 二进制文件下载 在 x86-64 Linux 上安装最新的 minikube 稳定版
curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64
使用 二进制文件下载 在 x86-64 Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
curl -LO $(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-linux-amd64' | head -n1)
sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64
使用 Debian 包 在 x86-64 Linux 上安装最新的 minikube 稳定版
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_amd64.deb
sudo dpkg -i minikube_latest_amd64.deb
使用 Debian 包 在 x86-64 Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube_.*_amd64.deb' | head -n1)
curl -L $u > minikube_beta_amd64.deb && sudo dpkg -i minikube_beta_amd64.deb
使用 RPM 包 在 x86-64 Linux 上安装最新的 minikube 稳定版
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.x86_64.rpm
sudo rpm -Uvh minikube-latest.x86_64.rpm
使用 RPM 包 在 x86-64 Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-.*.x86_64.rpm' | head -n1)
curl -L $u > minikube-beta.x86_64.rpm && sudo rpm -Uvh minikube-beta.x86_64.rpm
使用 二进制文件下载 在 ARM64 Linux 上安装最新的 minikube 稳定版
curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-linux-arm64
sudo install minikube-linux-arm64 /usr/local/bin/minikube && rm minikube-linux-arm64
使用 二进制文件下载 在 ARM64 Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
curl -LO $(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-linux-arm64' | head -n1)
sudo install minikube-linux-arm64 /usr/local/bin/minikube && rm minikube-linux-arm64
使用 Debian 包 在 ARM64 Linux 上安装最新的 minikube 稳定版
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_arm64.deb
sudo dpkg -i minikube_latest_arm64.deb
使用 Debian 包 在 ARM64 Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube_.*_arm64.deb' | head -n1)
curl -L $u > minikube_beta_arm64.deb && sudo dpkg -i minikube_beta_arm64.deb
使用 RPM 包 在 ARM64 Linux 上安装最新的 minikube 稳定版
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.aarch64.rpm
sudo rpm -Uvh minikube-latest.aarch64.rpm
使用 RPM 包 在 ARM64 Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-.*.aarch64.rpm' | head -n1)
curl -L $u > minikube-beta.aarch64.rpm && sudo rpm -Uvh minikube-beta.aarch64.rpm
使用 二进制文件下载 在 ppc64 Linux 上安装最新的 minikube 稳定版
curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-linux-ppc64le
sudo install minikube-linux-ppc64le /usr/local/bin/minikube && rm minikube-linux-ppc64le
使用 二进制文件下载 在 ppc64 Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
curl -LO $(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-linux-ppc64le' | head -n1)
sudo install minikube-linux-ppc64le /usr/local/bin/minikube && rm minikube-linux-ppc64le
使用 Debian 包 在 ppc64 Linux 上安装最新的 minikube 稳定版
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_ppc64le.deb
sudo dpkg -i minikube_latest_ppc64le.deb
使用 Debian 包 在 ppc64 Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube_.*_ppc64le.deb' | head -n1)
curl -L $u > minikube_beta_ppc64le.deb && sudo dpkg -i minikube_beta_ppc64le.deb
使用 RPM 包 在 ppc64 Linux 上安装最新的 minikube 稳定版
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.ppc64el.rpm
sudo rpm -Uvh minikube-latest.ppc64el.rpm
使用 RPM 包 在 ppc64 Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-.*.ppc64el.rpm' | head -n1)
curl -L $u > minikube-beta.ppc64el.rpm && sudo rpm -Uvh minikube-beta.ppc64el.rpm
使用 二进制文件下载 在 S390x Linux 上安装最新的 minikube 稳定版
curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-linux-s390x
sudo install minikube-linux-s390x /usr/local/bin/minikube && rm minikube-linux-s390x
使用 二进制文件下载 在 S390x Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
curl -LO $(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-linux-s390x' | head -n1)
sudo install minikube-linux-s390x /usr/local/bin/minikube && rm minikube-linux-s390x
使用 Debian 包 在 S390x Linux 上安装最新的 minikube 稳定版
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_s390x.deb
sudo dpkg -i minikube_latest_s390x.deb
使用 Debian 包 在 S390x Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube_.*_s390x.deb' | head -n1)
curl -L $u > minikube_beta_s390x.deb && sudo dpkg -i minikube_beta_s390x.deb
使用 RPM 包 在 S390x Linux 上安装最新的 minikube 稳定版
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.s390x.rpm
sudo rpm -Uvh minikube-latest.s390x.rpm
使用 RPM 包 在 S390x Linux 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-.*.s390x.rpm' | head -n1)
curl -L $u > minikube-beta.s390x.rpm && sudo rpm -Uvh minikube-beta.s390x.rpm
使用 Homebrew 在 x86-64 macOS 上安装最新的 minikube 稳定版
如果已安装 Homebrew Package Manager
brew install minikube
如果在使用 brew 安装后 which minikube 失败,您可能需要删除旧的 minikube 链接并链接新安装的二进制文件
brew unlink minikube
brew link minikube
使用 二进制文件下载 在 x86-64 macOS 上安装最新的 minikube 稳定版
curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-darwin-amd64
sudo install minikube-darwin-amd64 /usr/local/bin/minikube
使用 二进制文件下载 在 x86-64 macOS 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
curl -LO $(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-darwin-amd64' | head -n1)
sudo install minikube-darwin-amd64 /usr/local/bin/minikube
使用 二进制文件下载 在 ARM64 macOS 上安装最新的 minikube 稳定版
curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-darwin-arm64
sudo install minikube-darwin-arm64 /usr/local/bin/minikube
使用 Homebrew 在 ARM64 macOS 上安装最新的 minikube 稳定版
如果已安装 Homebrew Package Manager
brew install minikube
如果在使用 brew 安装后 which minikube 失败,您可能需要删除旧的 minikube 链接并链接新安装的二进制文件
brew unlink minikube
brew link minikube
使用 二进制文件下载 在 ARM64 macOS 上安装最新的 minikube 测试版
r=https://api.github.com/repos/kubernetes/minikube/releases
curl -LO $(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-darwin-arm64' | head -n1)
sudo install minikube-darwin-arm64 /usr/local/bin/minikube
使用 Windows Package Manager 在 x86-64 Windows 上安装最新的 minikube 稳定版
如果已安装 Windows Package Manager,请使用以下命令安装 minikube
winget install Kubernetes.minikube
使用 Chocolatey 在 x86-64 Windows 上安装最新的 minikube 稳定版
如果已安装 Chocolatey Package Manager,请使用以下命令
choco install minikube
使用 .exe 下载 在 x86-64 Windows 上安装最新的 minikube 稳定版
-
下载并运行 最新版本 的安装程序。
或者,如果使用PowerShell,请使用此命令New-Item -Path 'c:\' -Name 'minikube' -ItemType Directory -Force $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -OutFile 'c:\minikube\minikube.exe' -Uri 'https://github.com/kubernetes/minikube/releases/latest/download/minikube-windows-amd64.exe' -UseBasicParsing -
将
minikube.exe二进制文件添加到您的PATH。
请确保以管理员身份运行 PowerShell。如果您在安装过程中使用了终端(如 powershell),请关闭该终端并重新打开它,然后再运行 minikube。$oldPath = [Environment]::GetEnvironmentVariable('Path', [EnvironmentVariableTarget]::Machine) if ($oldPath.Split(';') -inotcontains 'C:\minikube'){ [Environment]::SetEnvironmentVariable('Path', $('{0};C:\minikube' -f $oldPath), [EnvironmentVariableTarget]::Machine) }
使用 .exe 下载 在 x86-64 Windows 上安装最新的 minikube 测试版
-
下载并运行 最新测试版 的安装程序。
或者,如果使用PowerShell,请使用此命令New-Item -Path 'c:\' -Name 'minikube' -ItemType Directory -Force $response = Invoke-WebRequest -Uri 'https://api.github.com/repos/kubernetes/minikube/releases' -UseBasicParsing $json = $response.Content | ConvertFrom-Json $item = ($json | ?{ $_.prerelease -eq $true })[0].assets | ?{ $_.name -eq 'minikube-windows-amd64.exe' } Invoke-WebRequest -Uri $item.browser_download_url -OutFile 'c:\minikube\minikube.exe' -UseBasicParsing -
将
minikube.exe二进制文件添加到您的PATH。
请确保以管理员身份运行 PowerShell。$oldPath = [Environment]::GetEnvironmentVariable('Path', [EnvironmentVariableTarget]::Machine) if ($oldPath.Split(';') -inotcontains 'C:\minikube'){ [Environment]::SetEnvironmentVariable('Path', $('{0};C:\minikube' -f $oldPath), [EnvironmentVariableTarget]::Machine) }如果您通过命令行执行安装,您需要关闭该命令行并打开一个新的,然后再继续。
2启动您的集群
从具有管理员权限的终端(但未以 root 用户登录)运行
minikube start
如果 minikube 启动失败,请参阅 驱动程序页面 以获取设置兼容的容器或虚拟机管理器的帮助。
3与您的集群交互
如果您已安装 kubectl(请参阅 文档),您现在可以使用它来访问您崭新的集群
kubectl get po -A
或者,minikube 可以下载相应版本的 kubectl,您应该可以像这样使用它
minikube kubectl -- get po -A
您还可以通过将以下内容添加到您的 shell 配置来使生活更轻松:(有关更多详细信息,请参阅:kubectl)
alias kubectl="minikube kubectl --"
最初,一些服务(如存储提供程序)可能尚未处于“运行”状态。这是集群启动过程中的正常情况,稍后会自行解决。为了更深入地了解集群状态,minikube 捆绑了 Kubernetes Dashboard,它允许您轻松熟悉新环境
minikube dashboard
4部署应用程序
创建一个示例部署并将其公开在端口 8080
kubectl create deployment hello-minikube --image=kicbase/echo-server:1.0
kubectl expose deployment hello-minikube --type=NodePort --port=8080
这可能需要一些时间,但当您运行时,您的部署将很快出现
kubectl get services hello-minikube
访问此服务的最简单方法是让 minikube 为您启动一个 Web 浏览器
minikube service hello-minikube
或者,使用 kubectl 转发端口
kubectl port-forward service/hello-minikube 7080:8080
搞定!您的应用程序现已在 https://:7080/ 上可用。
您应该能够在应用程序输出中看到请求元数据。尝试更改请求的路径并观察其变化。类似地,您可以执行 POST 请求并观察正文显示在输出中。
要访问 LoadBalancer 部署,请使用“minikube tunnel”命令。这是一个示例部署
kubectl create deployment balanced --image=kicbase/echo-server:1.0
kubectl expose deployment balanced --type=LoadBalancer --port=8080
在另一个窗口中,启动 tunnel 以为主‘balanced’部署创建一个可路由 IP
minikube tunnel
要找到可路由 IP,请运行此命令并检查 EXTERNAL-IP 列
kubectl get services balanced
您的部署现已在 <EXTERNAL-IP>:8080 上可用
启用 ingress 插件
minikube addons enable ingress
以下示例创建简单的 echo-server 服务和 Ingress 对象以路由到这些服务。
kind: Pod
apiVersion: v1
metadata:
name: foo-app
labels:
app: foo
spec:
containers:
- name: foo-app
image: 'kicbase/echo-server:1.0'
---
kind: Service
apiVersion: v1
metadata:
name: foo-service
spec:
selector:
app: foo
ports:
- port: 8080
---
kind: Pod
apiVersion: v1
metadata:
name: bar-app
labels:
app: bar
spec:
containers:
- name: bar-app
image: 'kicbase/echo-server:1.0'
---
kind: Service
apiVersion: v1
metadata:
name: bar-service
spec:
selector:
app: bar
ports:
- port: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: example-ingress
spec:
rules:
- http:
paths:
- pathType: Prefix
path: /foo
backend:
service:
name: foo-service
port:
number: 8080
- pathType: Prefix
path: /bar
backend:
service:
name: bar-service
port:
number: 8080
---
应用内容
kubectl apply -f https://storage.googleapis.com/minikube-site-examples/ingress-example.yaml
等待 ingress 地址
kubectl get ingress
NAME CLASS HOSTS ADDRESS PORTS AGE
example-ingress nginx * <your_ip_here> 80 5m45s
Docker Desktop 用户注意事项
要使 ingress 工作,您需要打开一个新的终端窗口并运行 minikube tunnel,并在下一步中使用 127.0.0.1 替换 <ip_from_above>。
现在验证 ingress 是否正常工作
$ curl <ip_from_above>/foo
Request served by foo-app
...
$ curl <ip_from_above>/bar
Request served by bar-app
...
5管理您的集群
暂停 Kubernetes,而不影响已部署的应用程序
minikube pause
取消暂停的实例
minikube unpause
停止集群
minikube stop
更改默认内存限制(需要重新启动)
minikube config set memory 9001
浏览易于安装的 Kubernetes 服务目录
minikube addons list
创建第二个运行旧版 Kubernetes 的集群
minikube start -p aged --kubernetes-version=v1.34.0
删除所有 minikube 集群
minikube delete --all
迈出下一步
- minikube 指南
- 社区贡献的教程
- minikube 命令参考
- 贡献者指南
- 参加我们 快速 5 题调查 以分享您的想法 🙏