一、前提条件
- 本文基于Win 10操作系统,
- Git已在本机安装,
- 在Docker Desktop for Window安装启动后执行的。
如还没安装,可以从Docker 官方网站下载Docker for windows,安装比较简单,这里不赘述了~。
二、docker配置国内镜像
为了提升镜像拉取速度,在Docker 设置里,配置Docker Engine国内的仓库地址:
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"debug": false,
"experimental": false,
"features": {
"buildkit": true
},
"insecure-registries": [],
"registry-mirrors": [
"https://xxxxx.mirror.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn",
"https://registry.docker-cn.com"
]
}
二、Kubernetes镜像拉取
从GitHub上拉取Images到本机文件夹中:
git clone https://github.com/AliyunContainerService/k8s-for-docker-desktop.git
三、Kubernetes镜像安装
进入下载目录,执行load_images.ps1脚本:
cd k8s-for-docker-desktop
.\load_images.ps1
四、启动Kubernetes
在Docker面板上的Settings里,切到Kubernetes上启动Kubernetes
五、安装k8s管理页面Dashboard
进入下载目录下,执行
kubectl create -f kubernetes-dashboard.yaml
查看Dashboard镜像状态
kubectl get pods --all-namespaces
六、访问k8s Dashboard
使用命令,启动K8s Server,
kubectl proxy ##或者 nohup kubectl proxy >/dev/null &
访问地址
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/
七、选择Token认证方式登录
生成Token:
##授权`kube-system`默认服务账号 kubectl apply -f kube-system-default.yaml ##生成Token $TOKEN=((kubectl -n kube-system describe secret default | Select-String "token:") -split " +")[1] kubectl config set-credentials docker-desktop --token="${TOKEN}" echo $TOKEN
复制Token粘贴到浏览器输入框中,点击登录即可跳转到Dashboard页面:
八、配置服务账号访问权限
创建服务账号
##命令 New-Item admin-user.yaml ##内容如下 apiVersion: v1 kind: ServiceAccount metadata: name: admin-user namespace: kubernetes-dashboard ##创建 kubectl create -f admin-user.yaml
绑定账号角色
##命令 New-Item admin-user-role-binding.yaml ##内容如下 apiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRoleBinding metadata: name: admin-user roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: admin-user namespace: kubernetes-dashboard ##创建 kubectl create -f admin-user-role-binding.yaml
获取账号Token
$ kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')
收工!