ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

逐步轻松搞定K8S在Docker Desktop上的安装

2022-05-20 12:02:38  阅读:374  来源: 互联网

标签:kubectl ## Desktop admin user Docker K8S dashboard


一、前提条件

  • 本文基于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"
  ]
}
View Code

二、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        
View Code

绑定账号角色

##命令
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
View Code

获取账号Token

$ kubectl -n kubernetes-dashboard   describe secret $(kubectl -n kubernetes-dashboard  get secret | grep admin-user | awk '{print $1}')

 

收工!

 

标签:kubectl,##,Desktop,admin,user,Docker,K8S,dashboard
来源: https://www.cnblogs.com/windy2008/p/16291377.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有