版本
- Docker Desktop: 4.20.1 (110738)
- Docker Engine: 24.0.2
- Docker Compose: v2.18.1
- Credential Helper: v0.7.0
- Kubernetes: v1.25.9
- macOS: 13.4.1 (22F82)
启动成功的效果
k8s启动成功.png
一直start的原因
因为网络原因,拉取不到镜像
解决办法
- 设置代理 或 更换镜像源
-
设置代理
设置代理.png - 更换镜像源
这个最简单,有很多源可以用,但是自己试了半天发现只有中科大的这个好使。
a. 阿里: https://[自己登陆看].mirror.aliyuncs.com
b. 中科大: https://docker.mirrors.ustc.edu.cn
c. 网易: https://hub-mirror.c.163.com
d. docker中国: https://registry.docker-cn.com
更换镜像源.png
拉取k8s-for-docker-desktop
前面是配置好网络,剩下的就需要拉取镜像了,要根据k8s的版本拉取镜像,阿里提供了一个项目,只要checkout到你需要k8s的版本分支上,然后执行一个脚本就ok了。
https://github.com/AliyunContainerService/k8s-for-docker-desktop拉取镜像
我的k8s版本是1.25.9,阅读k8s-for-docker-desktop的readme发现他们并没有支持这个版本的分支,但是他们在【注】里说明了如何修改。
注:如果发现K8s版本与您的环境不一致,可以修改images.properties文件指明所需镜像版本,欢迎Pull Request。
我checkout了v1.25.4分支,将images.properties里面所有的1.25.4替换成了1.25.9,然后执行了
./load_images.sh
- 补充镜像
k8s-for-docker-desktop拉取的镜像并不完整,见docker desktop 2.3.7 kubernetes(k8s)v1.18.8一直处于starting状态解决方法
逛了下Docker Hub又拉取了几个镜像,列表如下
docker pull docker/desktop-kubernetes:kubernetes-v1.25.9-cni-v1.1.1-critools-v1.25.0-cri-dockerd-v0.2.6-1-debian
docker pull docker/desktop-storage-provisioner:v2.0
docker pull docker/desktop-vpnkit-controller:v2.0
-
启动k8s
启动.png