"dial unix /tmp/docker.sock: connect: permission denied" 当 运行 docker-组合
"dial unix /tmp/docker.sock: connect: permission denied" when running docker-compose up
我刚换了一台工作用的新电脑,但我不明白为什么会遇到这个问题。我搜索了很多 SO 线程和其他网站,但还没有解决它。
我的 OS 是 Fedora 29。而且我是 docker 的菜鸟,所以老实说我迷失在这一切中。
所以基本上每次我 运行 docker-compose up
,我都会收到这个错误:
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Error retrieving docker server version info: Get http://unix.sock/version: dial unix /tmp/docker.sock: connect: permission denied
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Error retrieving docker server info: Get http://unix.sock/info: dial unix /tmp/docker.sock: connect: permission denied
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Error listing containers: Get http://unix.sock/containers/json?all=1: dial unix /tmp/docker.sock: connect: permission denied
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Watching docker events
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Error retrieving docker server info: Get http://unix.sock/info: dial unix /tmp/docker.sock: connect: permission denied
nginx-proxy | dockergen.1 | 2019/10/15 08:23:41 Docker daemon connection interrupted
docker组
我看到很多人建议创建 docker
组并将当前用户添加到其中,但它对我不起作用,即使在重新登录并重新启动后也是如此。
$ ls -l /var/run/docker.sock
srw-rw----. 1 root docker 0 Oct 15 09:58 /var/run/docker.sock
$ whoami
ave
$ groups ave
ave : ave wheel dialout docker
我也试过sudo setfacl -m user:ave:rw /var/run/docker.sock
,也没用。
docker
我已经尝试卸载 docker 并重新安装,停止 docker 守护程序并重新启动它,docker-compose down
和 docker-compose up
。
不管我是运行 docker-compose up
有没有sudo
,都会出现同样的错误。
docker-compose.yml
我的 docker-compose.yml
文件大约有 200 行,所以我认为这是与此问题相关的部分?告诉我是否需要更多。
services:
nginx-proxy:
build:
context: .
dockerfile: Dockerfile-nginx
container_name: nginx-proxy
ports:
- "80:80"
environment:
- DEFAULT_HOST=<a host name>
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
depends_on:
- web
- gateway
- processing
您需要添加
privileged: true
This was merged already. To enable on your containers use:
my_service:
privileged: true
你可以检查这个issue。
我刚换了一台工作用的新电脑,但我不明白为什么会遇到这个问题。我搜索了很多 SO 线程和其他网站,但还没有解决它。
我的 OS 是 Fedora 29。而且我是 docker 的菜鸟,所以老实说我迷失在这一切中。
所以基本上每次我 运行 docker-compose up
,我都会收到这个错误:
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Error retrieving docker server version info: Get http://unix.sock/version: dial unix /tmp/docker.sock: connect: permission denied
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Error retrieving docker server info: Get http://unix.sock/info: dial unix /tmp/docker.sock: connect: permission denied
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Error listing containers: Get http://unix.sock/containers/json?all=1: dial unix /tmp/docker.sock: connect: permission denied
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Watching docker events
nginx-proxy | dockergen.1 | 2019/10/15 08:23:40 Error retrieving docker server info: Get http://unix.sock/info: dial unix /tmp/docker.sock: connect: permission denied
nginx-proxy | dockergen.1 | 2019/10/15 08:23:41 Docker daemon connection interrupted
docker组
我看到很多人建议创建 docker
组并将当前用户添加到其中,但它对我不起作用,即使在重新登录并重新启动后也是如此。
$ ls -l /var/run/docker.sock
srw-rw----. 1 root docker 0 Oct 15 09:58 /var/run/docker.sock
$ whoami
ave
$ groups ave
ave : ave wheel dialout docker
我也试过sudo setfacl -m user:ave:rw /var/run/docker.sock
,也没用。
docker
我已经尝试卸载 docker 并重新安装,停止 docker 守护程序并重新启动它,docker-compose down
和 docker-compose up
。
不管我是运行 docker-compose up
有没有sudo
,都会出现同样的错误。
docker-compose.yml
我的 docker-compose.yml
文件大约有 200 行,所以我认为这是与此问题相关的部分?告诉我是否需要更多。
services:
nginx-proxy:
build:
context: .
dockerfile: Dockerfile-nginx
container_name: nginx-proxy
ports:
- "80:80"
environment:
- DEFAULT_HOST=<a host name>
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
depends_on:
- web
- gateway
- processing
您需要添加
privileged: true
This was merged already. To enable on your containers use:
my_service:
privileged: true
你可以检查这个issue。