我试图在Windows主机上通过VirtualBox运行官方5.4.3 Filebeat docker容器。我没有创建自定义图像,而是使用卷映射将filebeat.yml
文件传递给容器,使用自动创建的VirtualBox挂载/c/Users
,指向我主机上的C:\Users
不幸的是我坚持这个错误:
退出:加载配置文件时出错:配置文件(" filebeat.yml")只能由所有者写入,但权限为" -rwxrwxrwx" (要修复权限使用:' chmod go -w /usr/share/filebeat/filebeat.yml')
我的docker-compose配置是:
filebeat:
image: "docker.elastic.co/beats/filebeat:5.4.3"
volumes:
- "/c/Users/Nathan/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro"
- "/c/Users/Nathan/log:/mnt/log:ro"
我已尝试通过SSH连接到计算机并运行chmod go-w
命令,但没有更改。在Windows主机上使用VirtualBox共享文件夹时,这是某种权限限制吗?
答案 0 :(得分:1)
看起来这是Windows DACL权限系统的副作用。幸运的是,我只需要在开发环境中使用它,所以我只是通过覆盖容器入口点并传递strict.perms
参数来禁用权限检查。
filebeat:
image: "docker.elastic.co/beats/filebeat:5.4.3"
entrypoint: "filebeat -e -strict.perms=false"
volumes:
- "/c/Users/Nathan/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro"
- "/c/Users/Nathan/log:/mnt/log:ro"