我正在尝试通过Windows主机上的VirtualBox运行官方的5.4.3 Filebeat docker容器。我没有使用自定义镜像,而是使用卷映射,使用自动创建的VirtualBox挂接filebeat.yml/c/Users文件传递到容器,该文件指向主机上的C:\Users
不幸的是,我陷入了这个错误:

我的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共享文件夹时,是否存在某种权限限制?

最佳答案

看起来这是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"

关于windows - Windows主机上来自Docker的卷映射filebeat.yml权限,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44926280/

10-16 16:36