mac本地搭建docker+k8s步骤

概览:

* kubectl安装

* minikube安装

* dashboard安装

主机配置:

* mac M2 (arm架构)

服务及版本概览:

|------------|---------|
| 服务名称 | 版本 |
| kubectl | v1.29.2 |
| Kubernetes | v1.30.0 |
| kicbase | v0.0.44 |
| dashboard | v2.7.0 |
| docker | 26.1.1 |

具体步骤:

1.kubectl安装

bash 复制代码
brew install kubectl
  • 查看版本信息
bash 复制代码
> kubectl version --client

Client Version: v1.29.2

Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3

2.minikube 安装(先本地启动docker服务,docker安装这里不详细介绍了)

minikube依赖虚拟技术环境,本地部署使用的是本机安装的docker服务,版本:26.1.1

下载对应版本的安装包并安装:

bash 复制代码
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-arm64
sudo install minikube-darwin-arm64 /usr/local/bin/minikube

启动minikube(踩坑一:minikube start命令启动会去拉起镜像,国外站点的镜像无法拉起,导致启动失败)

解决方式:先通过docker拉起kicbase镜像,启动的智慧,指定该镜像启动

bash 复制代码
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44

minikube delete ; minikube start --force  --base-image='registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.44'

3.Dashboard安装

踩坑二:

* minikube dashboard直接启动镜像拉起失败

* 使用helm安装也是镜像拉取失败

*https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml 无法访问yaml文件地址

解决方式:

1.查看raw.githubusercontent.com ip地址:

在 ip查询 查ip 网站ip查询 同ip网站查询 iP反查域名 iP查域名 同ip域名

输入raw.githubusercontent.com查询IP地址

2.修改hosts文件,把查询到的ip和域名加入到hosts文件中:

185.199.110.133 raw.githubusercontent.com

3.下载yaml文件

bash 复制代码
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

4.通过yaml文件安装dashboard

bash 复制代码
kubectl  apply -f recommended.yaml 

5.创建 Dashboard 用户

Dashboard 默认启用了令牌认证,因此您需要创建一个用户帐户来登录。首先,创建一个 YAML 文件(例如 dashboard-adminuser.yaml)

bash 复制代码
> vim dashboard-adminuser.yaml

apiVersion: v1

kind: ServiceAccount

metadata:

  name: admin-user

  namespace: kubernetes-dashboard

---

apiVersion: rbac.authorization.k8s.io/v1

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

执行:

bash 复制代码
kubectl apply -f dashboard-adminuser.yaml

6.启动图形化界面,成功之后会在浏览器自动打开dashboard页面:

bash 复制代码
minikube dashboard 或  minikube dashboard --alsologtostderr -v=1

7.获取令牌(创建完用户之后,没用令牌就直接进入管理页面了)

要获取登录到 Dashboard 所需的令牌,请运行以下命令:

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

最后给大家看下页面:

总结:

安装的主要问题是镜像拉取失败,或者yaml文件无法访问的原因

参考文档:

Deploy and Access the Kubernetes Dashboard | Kubernetes

https://github.com/kubernetes/dashboard/tree/master

解决GitHub的raw.githubusercontent.com无法连接问题-CSDN博客

相关推荐
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
分布式存储与RustFS3 天前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
玉&心3 天前
通过Arthas在线诊断K8S中的内存及JVM等使用情况
docker·k8s·arthas
xing-xing3 天前
Docker容器中Nginx站点根目录网页配置访问
nginx·docker
赵文宇(温玉)3 天前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
guo_wen_qiang3 天前
上传本地镜像到harbor中
docker·容器·持续部署
张洛闻Eren3 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
羑悻的小杀马特3 天前
Dockerfile 全景指南:从入门编写dockerfile到生产环境镜像优化实战,一步步带你从啃透制作指令到镜像制作落地!
docker·dockerfile·镜像制作
BianHuanShiZhe3 天前
docker常见命令
docker
正经教主3 天前
【FDE系列】阶段2:Day 43:Docker Compose — 多容器一键编排
人工智能·docker·fde