笔者在mac下安装Rancher Desktop后,在终端使用docker build命令构建镜像时报错,通过docker --version可以查看到docker版本为Docker version 20.10.17-rd, build c2e4e01,但使用docker images查看镜像列表或docker ps -a查看容器列表时,爆出Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running的错误。
当前环境:
Mac环境:macOs 12.6.3
Rancher Desktop:1.6.2
Kubernetes:v1.25.6
通过排查发现:
此问题跟Rancher Desktop设置的容器引擎(Container Engine)有关系,容器引擎支持两种:分别为
containerd和dockerd
两者的一个重要区别:dockerd支持使用docker build/push/save/load 等命令或调用docker API时,containerd不支持。
所以在有需要使用build docker镜像是,需要将容器引擎设置为dockerd。
设置方法:
Rancher Desktop——Preferences——Container Engine——dockerd。
设置完后,在命令行测试,ok可以正常使用: