执行docker命令的时候报错如下:
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
为了解决这个问题,看了一些帖子有的说重启docker.service服务或者看该服务是否已经正常启动,结果网上试了好几个方法都不管用,那就直接卸载了docker以后重新安装呗!
可以看看这里的方法是否有用:
参考链接
参考网上的一些教程卸载了docker的安装文件,但执行docker --version命令依然会显示docker的版本号,期间还执行了
sudo apt-get update
sudo apt-get upgrade 命令,依然没有用
后面发现是因为PATH路径的设置原因,尽管docker的文件已经删除,但由于docker的相对路径已经写入了PATH中,因此这里只需要将docker在PATH中的路径给去掉即可(即对PATH进行重新赋值,去掉包含docker路径的值)
然后接下来就参考这个帖子开始安装docker:参考链接
安装依赖:
sudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
添加阿里云镜像秘钥:
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
添加阿里云镜像仓库
sudo add-apt-repository
“deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu
$(lsb_release -cs)
stable”
更新源
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
验证是否安装成功
sudo docker run hello-world
设置开机自启动docker
sudo systemctl enable docker && sudo systemctl start docker
避免每次输入sudo 方法
· 创建docker组
· sudo groupadd docker
· 将你的用户添加到docker组中
· sudo usermod -aG docker $USER
·更新一下用户
· newgrp docker
接下来一定要重启一次terminal
问题出现原因
接下来那篇文章提到要配置docker启动参数
在执行到这一步前,我们已经尝试执行过sudo docker run hello-world命令发现能正常执行,结果在配置完/etc/docekr/daemon.json文件后,程序就开始报前面提到的那个错了:
$docker ps
报错如下:
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
这里只需要把/etc/docekr/daemon.json这个文件删除即可
然后发现docker就可以正常运行了。
重启docker服务
#重新加载某个服务的配置文件
sudo systemctl daemon-reload
sudo systemctl restart docker