Windows 10上安装Docker Desktop并启用自带的Kubernetes
前提条件
- 安装Hyper-V和Containers,自行百度吧,网上一大把。
安装Docker Desktop
- 输入https://hub.docker.com/网址。
- 点击Download for windows。
- 下载完成,点击右键管理员权限安装,默认选择,点击安装,
注:这里注意一下, 如果是公司内网,要开热点或连wifi进行安装,否则不成功。
- 配置一下Docker Engine,如果有公司的服务器,把公司的服务器也写上去
下载镜像
- 看下Docker Desktop中 Kubernetes版本是多少。
- 我的这个是Kubernetes 是v1.21.3,所以下载对应下载地址:https://github.com/AliyunContainerService/k8s-for-docker-desktop/tree/v1.21.3
- 下载完毕之后,解压并进入到其目录下,以管理员身份运行
.\load_images.ps1 - 运行完之后你会在Docker Desktop的Images中看到下载的镜像信息,及在Containers/Apps中看到正在使用的镜像信息。
下载 kubectl 工具
- 下载kubernetes v1.21.3,对应的工具版本:https://dl.k8s.io/v1.21.3/kubernetes-client-windows-amd64.tar.gz
- 这里版本可以手动改一下然后再访问。
例如下载kubernetes v1.19.7,对应的工具版本:https://dl.k8s.io/v1.19.7/kubernetes-client-windows-amd64.tar.gz - 下载后解压 kubectl.exe 文件到 C:\Windows\System32 目录下。
- 我们可以看下 kubectl 的版本号:
$ kubectl version
// An highlighted block
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.21.3", GitCommit:"1dd5338295409edcfff11505e7bb246f0d325d15", GitTreeState:"clean", BuildDate:"2021-01-13T13:23:52Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.21.3", GitCommit:"1dd5338295409edcfff11505e7bb246f0d325d15", GitTreeState:"clean", BuildDate:"2021-01-13T13:15:20Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"linux/amd64"}
启用 Dashboard
- kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml
如果不好使,多执行几次,还是不好使,那个进入到你之前下的那个k8s镜像的目录下,执行
kubectl apply -f kubernetes-dashboard.yaml - 执行命令 : kubectl proxy
// An highlighted block
kubectl proxy
Starting to serve on 127.0.0.1:8001
- 访问http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/
- 通过以下脚本,配置访问控制台所需的令牌。
// An highlighted block
$TOKEN=((kubectl -n kube-system describe secret default | Select-String "token:") -split " +")[1]
kubectl config set-credentials docker-desktop --token="${TOKEN}"
echo $TOKEN
- 复制token登录,进入到kuberntes。结束