Windows docker:权限被拒绝/var/run/docker.sock [英] Windows docker: permission denied /var/run/docker.sock
问题描述
当我尝试运行具有自动发现功能的filebeat时,出现以下错误:
When I try to run filebeat with autodiscover I get the following error:
退出:自动发现提供程序设置中的错误:获得权限尝试在以下位置连接到Docker守护程序套接字时被拒绝unix:///var/run/docker.sock:获取 http://%2Fvar%2Frun%2Fdocker.sock/v1.22/containers/json?limit = 0 :拨号Unix/var/run/docker.sock:connect:权限被拒绝
Exiting: error in autodiscover provider settings: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.22/containers/json?limit=0: dial unix /var/run/docker.sock: connect: permission denied
我从docker设置中暴露了tcp://localhost:2375上的守护程序.
I exposed the daemon on tcp://localhost:2375 from docker settings.
我检查了我的用户是否是"docker-users"组的成员.
I checked that my user is member of "docker-users" group.
docker-compose.yml:
docker-compose.yml:
filebeat:
image: store/elastic/filebeat:7.3.0
volumes:
- ./config/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro
- /var/lib/docker/containers/:/var/lib/docker/containers/:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
推荐答案
在docker-compose.yml中添加 user:root
可以修复套接字访问权限:
Adding user: root
to docker-compose.yml fixes socket access:
filebeat:
image: store/elastic/filebeat:7.3.0
volumes:
- ./config/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro
- /var/lib/docker/containers/:/var/lib/docker/containers/:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
user: root
这篇关于Windows docker:权限被拒绝/var/run/docker.sock的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!