使用 Docker Desktop 在 Kubernetes 上部署

Docker Desktop 包括一个独立的 Kubernetes 服务器和客户端, 以及在计算机上运行的 Docker CLI 集成。

Kubernetes 服务器在您的 Docker 实例中本地运行,不可配置,并且是一个单节点集群。它在本地系统的 Docker 容器中运行,并且 仅用于本地测试。

启用 Kubernetes 允许您部署 在 Kubernetes、Swarm 上并行工作负载以及作为独立容器工作负载。打开或关闭 Kubernetes 服务器不会影响您的其他 工作量。

安装并开启 Kubernetes

  1. 从 Docker Desktop 控制面板中,选择 Settings(设置)。

  2. 从左侧边栏中选择 Kubernetes

  3. Enable Kubernetes (启用 Kubernetes) 旁边,选中复选框。

  4. 选择应用并重新启动以保存设置,然后选择安装进行确认。这会将 Kubernetes 服务器作为容器运行所需的镜像实例化,并将命令安装到您的计算机上。/usr/local/bin/kubectl

    重要

    二进制文件不会自动与 Docker Desktop for Linux 一起打包。要安装适用于 Linux 的 kubectl 命令,请参阅 Kubernetes 文档。它应该安装在 。kubectl/usr/local/bin/kubectl

默认情况下,Kubernetes 容器对 等命令是隐藏的,因为不支持手动管理它们。大多数用户不需要此选项。要查看这些内部容器,请选择 Show system containers (advanced) (显示系统容器(高级))。docker ps

当 Kubernetes 打开并运行时,Docker Desktop 仪表板页脚和 Docker 菜单中会显示一个额外的状态栏。

注意

Docker Desktop 不会在新的更新后自动升级您的 Kubernetes 集群。要将 Kubernetes 集群升级到最新版本,请选择 Reset Kubernetes Cluster (重置 Kubernetes 集群)。

使用 kubectl 命令

Kubernetes 集成提供 Kubernetes CLI 命令 在 Mac 和 Windows 上。此位置可能不在 shell 的变量中,因此您可能需要键入命令的完整路径或将其添加到 这。/usr/local/bin/kubectlC:\Program Files\Docker\Docker\Resources\bin\kubectl.exePATHPATH

如果您已经安装了并且它是 指向其他环境(例如 GKE 集群),请确保更改上下文,使其指向:kubectlminikubekubectldocker-desktop

$ kubectl config get-contexts
$ kubectl config use-context docker-desktop

提示

在 CMD 或 PowerShell 终端中运行命令,否则可能会返回空结果。kubectlkubectl config get-contexts

如果您使用的是其他终端并且发生这种情况,您可以尝试将环境变量设置为文件的位置。kubeconfig.kube/config

如果您使用 Homebrew 或其他方法安装,并且 遇到冲突,请删除 。kubectl/usr/local/bin/kubectl

您可以通过列出可用节点来测试该命令:

$ kubectl get nodes

NAME                 STATUS    ROLES            AGE       VERSION
docker-desktop       Ready     control-plane    3h        v1.29.1

有关 的更多信息,请参阅 kubectl 文档kubectl

关闭并卸载 Kubernetes

要在 Docker Desktop 中关闭 Kubernetes,请执行以下操作:

  1. 在 Docker Desktop 控制面板中,选择 Settings 图标。
  2. 从左侧边栏中选择 Kubernetes
  3. Enable Kubernetes (启用 Kubernetes) 旁边,清除复选框
  4. 选择应用并重新启动以保存设置。这将停止并删除 Kubernetes 容器,并删除该命令。/usr/local/bin/kubectl