docker-compose up解决错误ERROR: Couldn’t connect to Docker daemon at http+docker://localunixsocket – is it running?

这个错误可能不经意间就出现,在开发的时候倒无所谓,就怕在线上环境遇到。

本博客用的环境就是docker搭建的,偶尔有那么几次博客无法访问,大部分是up或者build时候出了问题 /哭笑。

如下是详细错误内容,我猜你的跟我的应该一毛一样:

$ docker-compose up
ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?

If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.

导致这个问题的原因实在多,所以把解决方法一一列出。

1 docker服务没启动,那就启动

$ sudo systemctl start docker     // 或者 sudo service docker start
$ docker-compose up

2 docker服务启动了,但是一些缓存影响了

那就重启

$ sudo systemctl restart docker   // 或者 sudo service docker restart
$ docker-compose up

3 当前用户不在docker用户组

那就把自己加到docker用户组

$ sudo gpasswd -a ${USER} docker
$ docker-compose up

添加到docker用户组后要重新登录shell再up

4 也许用sudo可能有效

$ sudo docker-compose up

5 docker-compose版本太老了

那就更新版本

$ sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
$ docker-compose up

点击这里查看docker-compose官方安装教程(可能需要梯子)。

6 重启系统吧

$ sudo reboot
$ docker-compose up

这么几种方案,总有一款适合你,嘿嘿~~~

13 条评论

s
surest says: 回复

强啊

r
reallyli says: 回复

可以

y
yii says: 回复

可以可以

y
yii says: 回复

可以可以,瞎折腾出错都能解决掉

c
cgp says: 回复

解决了我的烦恼

影子 says: 回复

你好,我能转载你这篇文章吗

L
Loopher says: 回复

刚好找到这个,果然sudo一下就行,害。

福顺 says: 回复

问题在于:虽然本地用户已经加入docker用户组了,但是缓存还在,所以这时候su ${USER} 或者 重启服务器都行。

w
weng1250 says: 回复

很强 第3条漏了重启shell,重启了就可以了

L
Liam says: 回复

兄弟你是真的牛批

秋秋 says: 回复

牛!

k
kid says: 回复

谢谢

Q
Qi says: 回复

牛批兄弟!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

昵称 *