使用 Docker Desktop 部署到 Kubernetes
Docker Desktop 包含一个独立的 Kubernetes 服务器和客户端, 以及在您的机器上运行的 Docker CLI 集成。
Kubernetes 服务器在您的 Docker 实例中本地运行,不可配置,且为单节点集群。它在您本地系统的 Docker 容器中运行, 仅用于本地测试。
启用 Kubernetes 可让您并行地将工作负载部署到 Kubernetes、Swarm 以及作为独立容器运行。启用或停用 Kubernetes 服务器不会影响您的其他工作负载。
安装并启用 Kubernetes
从 Docker Desktop 仪表板中,选择 设置。
从左侧边栏中选择 Kubernetes。
在 启用 Kubernetes 旁边,选中复选框。
选择 应用并重启 以保存设置,然后选择 安装 进行确认。此操作将实例化运行 Kubernetes 服务器所需的容器镜像,并在您的机器上安装
/usr/local/bin/kubectl命令。重要
Linux 版本的 Docker Desktop 不会自动打包
kubectlBinaries。要在 Linux 上安装 kubectl 命令,请参阅 Kubernetes 文档。该命令应安装在/usr/local/bin/kubectl路径下。
默认情况下,Kubernetes 容器在 docker ps 等命令中是隐藏的,因为不支持手动管理这些容器。大多数用户无需启用此选项。如需查看这些内部容器,请选择 显示系统容器(高级)。
当 Kubernetes 启用并运行时,Docker Desktop 仪表板底部的状态栏以及 Docker 菜单中会额外显示一个状态栏。
注意
Docker Desktop 在新版本更新后不会自动升级您的 Kubernetes 集群。要将 Kubernetes 集群升级到最新版本,请选择 重置 Kubernetes 集群。
使用 kubectl 命令
Kubernetes集成提供了Kubernetes CLI命令,
在Mac上的位置为/usr/local/bin/kubectl,在Windows上的位置为C:\Program Files\Docker\Docker\Resources\bin\kubectl.exe。该位置可能不在您的shell的PATH环境变量中,因此您可能需要输入命令的完整路径,或将其添加到PATH中。
如果您已安装 kubectl 且其当前指向其他环境(例如 minikube 或 GKE 集群),请务必切换上下文,使 kubectl 指向 docker-desktop:
$ kubectl config get-contexts
$ kubectl config use-context docker-desktop
提示
在 CMD 或 PowerShell 终端中运行
kubectl命令,否则kubectl 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:
- 在 Docker Desktop 仪表盘中,选择 设置 图标。
- 从左侧边栏中选择 Kubernetes。
- 在 启用 Kubernetes 旁,清除复选框
- 选择 应用并重启 以保存设置。这将停止并移除 Kubernetes 容器,并同时移除
/usr/local/bin/kubectl命令。