minikube start

minikube 是本地 Kubernetes,专注于简化 Kubernetes 的学习和开发。

您只需一个 Docker(或类似兼容的)容器或虚拟机环境,然后通过一条命令即可启动 Kubernetes:minikube start

您需要什么

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

要在 x86-64 Linux 上使用 Debian 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_amd64.deb
sudo dpkg -i minikube_latest_amd64.deb

要在 x86-64 Linux 上使用 Debian 包安装最新的 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

要在 x86-64 Linux 上使用 RPM 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.x86_64.rpm
sudo rpm -Uvh minikube-latest.x86_64.rpm

要在 x86-64 Linux 上使用 RPM 包安装最新的 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

要在 ARM64 Linux 上使用 Debian 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_arm64.deb
sudo dpkg -i minikube_latest_arm64.deb

要在 ARM64 Linux 上使用 Debian 包安装最新的 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

要在 ARM64 Linux 上使用 RPM 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.aarch64.rpm
sudo rpm -Uvh minikube-latest.aarch64.rpm

要在 ARM64 Linux 上使用 RPM 包安装最新的 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

要在 ppc64 Linux 上使用 Debian 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_ppc64le.deb
sudo dpkg -i minikube_latest_ppc64le.deb

要在 ppc64 Linux 上使用 Debian 包安装最新的 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

要在 ppc64 Linux 上使用 RPM 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.ppc64el.rpm
sudo rpm -Uvh minikube-latest.ppc64el.rpm

要在 ppc64 Linux 上使用 RPM 包安装最新的 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

要在 S390x Linux 上使用 Debian 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_s390x.deb
sudo dpkg -i minikube_latest_s390x.deb

要在 S390x Linux 上使用 Debian 包安装最新的 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

要在 S390x Linux 上使用 RPM 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.s390x.rpm
sudo rpm -Uvh minikube-latest.s390x.rpm

要在 S390x Linux 上使用 RPM 包安装最新的 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

要在 ARMv7 Linux 上使用二进制下载安装最新的 minikube 稳定版

curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-linux-arm
sudo install minikube-linux-arm /usr/local/bin/minikube && rm minikube-linux-arm

要在 ARMv7 Linux 上使用二进制下载安装最新的 minikube 测试版

r=https://api.github.com/repos/kubernetes/minikube/releases
curl -LO $(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-linux-arm' | head -n1)
sudo install minikube-linux-arm /usr/local/bin/minikube && rm minikube-linux-arm

要在 ARMv7 Linux 上使用 Debian 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_armhf.deb
sudo dpkg -i minikube_latest_armhf.deb

要在 ARMv7 Linux 上使用 Debian 包安装最新的 minikube 测试版

r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube_.*_armhf.deb' | head -n1)
curl -L $u > minikube_beta_armhf.deb && sudo dpkg -i minikube_beta_armhf.deb

要在 ARMv7 Linux 上使用 RPM 包安装最新的 minikube 稳定版

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.armv7hl.rpm
sudo rpm -Uvh minikube-latest.armv7hl.rpm

要在 ARMv7 Linux 上使用 RPM 包安装最新的 minikube 测试版

r=https://api.github.com/repos/kubernetes/minikube/releases
u=$(curl -s $r | grep -o 'http.*download/v.*beta.*/minikube-.*.armv7hl.rpm' | head -n1)
curl -L $u > minikube-beta.armv7hl.rpm && sudo rpm -Uvh minikube-beta.armv7hl.rpm

要在 x86-64 macOS 上使用 Homebrew 安装最新的 minikube 稳定版

如果已安装 Homebrew 包管理器

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

要在 ARM64 macOS 上使用 Homebrew 安装最新的 minikube 稳定版

如果已安装 Homebrew 包管理器

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

要在 x86-64 Windows 上使用 Windows 包管理器安装最新的 minikube 稳定版

如果已安装 Windows 包管理器,请使用以下命令安装 minikube

winget install Kubernetes.minikube

要在 x86-64 Windows 上使用 Chocolatey 安装最新的 minikube 稳定版

如果已安装 Chocolatey 包管理器,请使用以下命令

choco install minikube

要在 x86-64 Windows 上使用 .exe 下载安装最新的 minikube 稳定版

  1. 下载并运行最新版本的安装程序。
    或者如果使用 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
    
  2. 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)
    }
    
    如果您使用终端(如 PowerShell)进行安装,请在运行 minikube 之前关闭并重新打开终端。

要在 x86-64 Windows 上使用 .exe 下载安装最新的 minikube 测试版

  1. 下载并运行最新测试版的安装程序。
    或者如果使用 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
    
  2. 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)
    }
    

    如果您使用命令行界面(CLI)进行安装,则在继续操作之前需要关闭当前 CLI 并打开一个新的 CLI。

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 仪表板,让您轻松适应新环境。

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 为您启动一个网页浏览器

minikube service hello-minikube

另外,使用 kubectl 转发端口

kubectl port-forward service/hello-minikube 7080:8080

嗒哒!您的应用程序现在可通过 http://localhost:7080/ 访问。

您应该能够在应用程序输出中看到请求元数据。尝试更改请求路径并观察变化。同样,您可以执行 POST 请求并观察请求体在输出中显示。

要访问 LoadBalancer 部署,请使用“minikube tunnel”命令。这是一个示例部署

kubectl create deployment balanced --image=kicbase/echo-server:1.0
kubectl expose deployment balanced --type=LoadBalancer --port=8080

在另一个窗口中,启动隧道为“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.16.1

删除所有 minikube 集群

minikube delete --all

下一步



最后修改于 2025 年 5 月 21 日:改进了 invoke-webrequest 命令 (#20574) (42fa39b10)