下面是经过踩坑之后的 windows10 单机部署 docker k8s 步骤,其中有几处比较关键的地方需要注意,后面加粗标注,下面就开始吧!
0、下载cmder
在 windows 上有一个趁手的命令行工具非常有必要,推荐 Cmder,下面是下载地址:
https://cmder.net/
安装完成后,一定要右键使用管理员权限打开,否则后续操作会失败。
1、下载安装配置docker
下载 docker.exe 安装文件:
https://www.docker.com/get-started
下载完成后直接安装,注意安装完成后,右键使用管理员权限启动。一定要使用管理员权限启动,否则 k8s 无法启动,启动后不要开启 k8s,否则会陷入无限等待当中,因为默认的源不可用(长城),只需要启动docker即可。
在 docker 桌面小图标上右键选择 【About Docker Desktop】,会出现下面界面,记住自己的 k8s 版本,后面会用到,从图中看到我的版本是 v1.16.5。
下面还是在 docker 桌面小图标上右键选择 【Dashboard】,进入下图中的界面,然后填入如下内容,然后点击【Apply & Restart】:
{
从上图中可以看到,我的 k8s 已经处于启动状态,请暂时忽略。
下面开始重要的步骤。
2、下载必要的镜像
注意,下面的所有操作都要在以管理员权限打开的命令行中执行
# 首先预先从阿里云 Docker 镜像服务下载 k8s 所需要的镜像:
git clone https://github.com/AliyunContainerService/k8s-for-docker-desktop.git# 切换至对应自己安装的 k8s 版本的分支
git checkout v1.16.5# 执行下面命令以允许脚本的执行
Set-ExecutionPolicy RemoteSigned# 然后执行命令开始下载 k8s 所需镜像
.load_images.ps1
下图是可以选择的分支,找到和所安装的 k8s 版本相同的分支即可。
完成上面的操作之后,在命令行输入 docker images 应该可以看到下图的镜像列表中的一部分,只要自己的列表中 http://k8s.gcr.io 开头的镜像都存在即可。
3、启动 k8s
在镜像下载完成后,启动 k8s 之前,还需要修改 hosts 文件,增加下面内容,否则会启动失败。
# 命令执行下面操作,注意这里用的命令行工具是 Cmder
# 如果使用 PowerShell 是没有 vim 的,只能自己手动打开目录修改文件
vim C:WindowsSystem32driversetchosts# 打开后,按下 i 符号进入编辑状态另起一行,写入下面内容
127.0.0.1 kubernetes.docker.internal# 接着按下 ESC 键进入 vim 命令行状态,输入 :qw! 保存退出即可
这个时候回到【Dashboard】界面,选中 Enable Kubernetes,然后应用。
下面等待 k8s 启动即可,可以通过查看主界面看是否有容器已经启动,如下图:
可以通过下图中两个命令查看运行情况:
4、配置 Kubernetes 控制台
直接用浏览器打开下面的地址,然后按 Ctrl+s 将文件保存到某个位置。
https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-rc5/aio/deploy/recommended.yaml
然后用编辑器打开这个文件,找到对应的 kind 并修改为下面的状态,注意,这一步非常重要,否则安装好的控制台无法使用。
kind
修改完成后执行下面的命令:
kubectl create -f recommended.yaml
会输出如下内容:
在登录之前先用命令获取到登录所需 Token:
# 使用下面命令拿到访问令牌
kubectl -n kubernetes-dashboard get secret
# NAME TYPE DATA AGE
# default-token-924zv kubernetes.io/service-account-token 3 52s
# kubernetes-dashboard-certs Opaque 0 52s
# kubernetes-dashboard-csrf Opaque 1 52s
# kubernetes-dashboard-key-holder Opaque 0 52s
# kubernetes-dashboard-token-68h2b kubernetes.io/service-account-token 3 52skubectl describe secrets -n kubernetes-dashboard kubernetes-dashboard-token-68h2b | grep token | awk 'NR==3{print $2}'
会输出一个很长的字符串,复制的这个字符串,然后打开浏览器,输入 localhost:30000 访问这个地址,正常情况下会打开下面所示的界面,输入刚刚拿到的 Token 点击登录即可,但如果是 Chrome 可能会存在访问策略问题,解决方法:
- 换 Firefox 浏览器
- 直接键盘打字 thisisunsafe 这个字符串,页面会自动刷新并进入图中页面
接着就能看到管理界面了,✿✿ヽ(°▽°)ノ✿,经过很长的步骤终于完成了所有操作。
5、安装 Rancher
Rancher是一个开源的集群管理工具,安装非常简单,只需要命令行输入下面命令即可:
docker run -d --restart=unless-stopped -p 10001:80 -p 10002:443 rancher/rancher
等待安装完成后,打开浏览器 https://localhost:10002,Chrome会提示不安全,忽略即可,就可以进入下面界面了:
接下来就是自由探索的时间,踩坑结束。