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博客

相关推荐
南猿北者27 分钟前
Docker Volume
运维·docker·容器
网络研究院2 小时前
Am I Isolated:一款安全态势基准测试工具
容器·工具·基准测试·安全态势
涔溪3 小时前
Docker简介
spring cloud·docker·eureka
内核程序员kevin4 小时前
在Linux环境下使用Docker打包和发布.NET程序并配合MySQL部署
linux·mysql·docker·.net
kayotin5 小时前
Wordpress博客配置2024
linux·mysql·docker
颜淡慕潇6 小时前
【K8S问题系列 | 9】如何监控集群CPU使用率并设置告警?
后端·云原生·容器·kubernetes·问题解决
运维&陈同学6 小时前
【模块一】kubernetes容器编排进阶实战之k8s基础概念
运维·docker·云原生·容器·kubernetes·云计算
信子姚青6 小时前
K8s使用nfs
容器
葡萄皮Apple6 小时前
[CKS] K8S RuntimeClass SetUp
java·容器·kubernetes
mit6.8247 小时前
[Docker#4] 镜像仓库 | 部分常用命令
linux·运维·docker·容器·架构