# k8s-docker-desktop-for-mac **Repository Path**: heehee/k8s-docker-desktop-for-mac ## Basic Information - **Project Name**: k8s-docker-desktop-for-mac - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-03-30 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # `Docker Desktop for Mac` 开启并使用 `Kubernetes` [![github workflow](https://github.com/maguowei/k8s-docker-desktop-for-mac/workflows/k8s%20image%20sync/badge.svg)](https://github.com/maguowei/k8s-docker-desktop-for-mac/actions) `Docker Desktop` 可以方便的启用 `Kubernetes` 集群, 为学习 `Kubernetes` 提供了极大的便利, 但是由于众所周知的原因, 国内的网络下不能很方便的下载 `Kubernetes` 集群所需要的镜像, 导致集群启用失败. 这里提供了一个简单的方法, 利用 [GitHub Actions](https://developer.github.com/actions/creating-github-actions/) 实现 `k8s.gcr.io` 上 `kubernetes` 依赖镜像自动同步到 [Docker Hub](https://hub.docker.com/) 上指定的仓库中。 通过 [load_images.sh](./load_images.sh) 将所需镜像从 `Docker Hub` 的同步仓库中取回,并重新打上原始的`tag`. 镜像对应关系文件可以查看: [images](./images). 说明: - 当前在 `Docker Desktop (Mac) Version 2.2.2.0 (43066) Channel: edge (Kubernetes: v1.16.5)`上经过测试可用 - [Docker Desktop for Mac Edge release notes](https://docs.docker.com/docker-for-mac/edge-release-notes/) - 使用 `Kubeadm` 在`Ubuntu`上安装 `Kubernetes` 请查看 [kubernetes-for-china](https://github.com/maguowei/kubernetes-for-china) ## 安装并启动 1. 下载安装 [Docker Desktop (Mac) Channel: edge](https://download.docker.com/mac/edge/Docker.dmg) 2. 设置 `Docker` 镜像加速, 这里使用 微软 `Azure` 的镜像服务,也可以选择其他的镜像加速服务。 [Azure Container Registry Proxy](https://github.com/Azure/container-service-for-azure-china/blob/master/aks/README.md#22-container-registry-proxy) ```https://dockerhub.azk8s.cn``` ![mirror](./image/mirror.png) 3. 从 `Docker Hub` 的同步仓库中取回,并重新打上原始的`tag`. ```bash ./load_images.sh ``` 4. 在`Docker for Mac` 设置中启用 `Kubernetes` 选项, 并等待一会儿,直到 `Kubernetes` 开始运行。 ![k8s](./image/k8s.png) 5. 可选的步骤: 切换`Kubernetes`运行上下文至 `docker-desktop` ```bash # 一般只有在之前用其他方式运行过Kubernetes才需要 $ kubectl config use-context docker-desktop ``` 6. 验证 `Kubernetes` 集群状态 ```bash $ kubectl cluster-info $ kubectl get nodes $ kubectl describe node ``` ## 参考 - [部署 Kubernetes Dashboard](https://github.com/maguowei/k8s-cookbook#%E9%83%A8%E7%BD%B2-kubernetes-dashboard) - [Helm 的使用](https://github.com/maguowei/k8s-cookbook#helm)