注意:
首先要确保Windows版本在18917以上
可在设置 > 系统 > 关于
中查看
以管理员权限启动 PowerShell,然后输入以下命令启用虚拟机平台:
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
以管理员权限启动 PowerShell,然后输入以下命令启用 Linux 子系统功能:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
在以上每一步命令执行完之后,PowerShell 中可能会提示你重新启动计算机。按“Y”可以重新启动。
设置 WSL 默认版本为2
wsl --set-default-version 2
在Microsoft Store中下载Linux发行版,我这里下载了Ubuntu
安装完成后,只是APP安装完成,Ubuntu系统还没有装到电脑里,需要启动该APP,然后自动执行安装,几分钟后就会提醒你设置用户名和密码。
设置好用户名和密码后,这个系统并没有设置root权限的密码,使用以下命令
sudo passwd root
然后输入你刚刚设置的密码,就可以设置root用户的密码。
至此,Ubuntu就安装完了,可以关闭该终端。
再次确认版本是否为 WSL 2(如果上面设置了默认版本为2,这一步应该可以忽略)
打开Windows下的PowerShell,输入如下命令:
wsl -l -v
如果Ubuntu的version为2,则可以忽略这一步,否则需要把Version转换为2,使用如下命令:
wsl --set-version Ubuntu 2
然后会自动转换为 WSL 2 版本。
由于国内原因,可能Ubuntu自带的软件源下载很慢,所以最好把软件源换成阿里的。
打开Ubuntu APP,或者在PowerShell中输入“wsl”,就能进入Ubuntu的命令行中。
首先输入su获取root权限。
先把原来的软件源备份一下
cp /etc/apt/sources.list /etc/apt/sources.list.bak
然后输入以下命令配置阿里云镜像(适用于20.04版本的Ubuntu,其它版本可以去阿里云镜像官网查看)
echo "deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse" > /etc/apt/sources.list
然后执行更新
apt update && apt upgrade -y
至此,WSL2的配置全部完成。
其实直接在Ubuntu中使用apt install命令就能安装docker,但是docker官方已经有了适用于Windows中WSL2环境的桌面版本的docker,比较方便,而且有图形界面,便于上手。
进入官网直接下载:Docker Desktop官网
安装时记得勾选使用 WSL 2 特性
首先确保 WSL 2 引擎打开
然后要选中将Docker集成到Ubuntu
这里也可以配置docker镜像下载位置为阿里云,可以进入阿里云容器镜像服务官网,阿里云可以给你一个加速器地址,使用加速器可以提升获取Docker官方镜像的速度。
然后复制到docker的设置中
至此,Docker全部设置完毕,可以去 WSL 环境下使用docker version
查看是否成功。
Kind 的全称是Kubernetes in Docker
可以查看KinD官网
打开 WSL 终端,先下载KinD二进制文件(最新版本可在官网中查看,目前是0.8.1)由于网络原因,这一步需要的时间比较长,如果很快就下完了,很有可能没下完整。
curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.8.1/kind-$(uname)-amd64
然后标记为可执行文件
chmod +x ./kind
然后移动到bin目录下
mv ./kind /usr/local/bin/
可以看Kubectl官方文档,官方文档中给出的安装命令如下:
#请不要使用这段代码!
sudo apt-get update && sudo apt-get install -y apt-transport-https
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubectl
但是官方文档在国内网络环境下并不适用,请使用以下代码:
第一步是安装https,这一步因为上面已经配置好了apt使用阿里云镜像,所以没问题。
sudo apt-get update && sudo apt-get install -y apt-transport-https
但是,由于国内网络原因,无法连接Google,很可能第二步会卡死。
这里也可以使用阿里云的镜像,把第二步的命令改为:
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
然后运行:
cat </etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF
修改完这个list文件后,最后执行
apt-get update
apt-get install -y kubelet kubeadm kubectl
至此,kubelet,kubeadm和kubectl就安装成功了。
使用如下命令创建集群:
kind create cluster --name myk8s
然后使用kubectl cluster-info --context kind-myk8s
即可查看集群信息,访问该网站可以看到
在Docker Desktop也可以看到对应的容器,这就是Desktop的方便之处。
同时使用kubectl get nodes
也可以看到kubernetes节点,这就是一个单节点的集群