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
这么几种方案,总有一款适合你,嘿嘿~~~
强啊
可以
可以可以
可以可以,瞎折腾出错都能解决掉
解决了我的烦恼
你好,我能转载你这篇文章吗
刚好找到这个,果然sudo一下就行,害。
问题在于:虽然本地用户已经加入docker用户组了,但是缓存还在,所以这时候su ${USER} 或者 重启服务器都行。
很强 第3条漏了重启shell,重启了就可以了
兄弟你是真的牛批
牛!
谢谢
牛批兄弟!