Volume mapped filebeat.yml permissions from Docker on a Windows host

I’m trying to run the official 5.4.3 Filebeat docker container via VirtualBox on a Windows host. Rather than creating a custom image, I’m using a volume mapping to pass the filebeat.yml file to the container using the automatically created VirtualBox mount /c/Users which points to C:\Users on my host.

Unfortunately I’m stuck on this error:

  • connecting Docker to a cloud provider, Amazon AWS
  • How to exit “docker run” containers once the script those containers execute calls exit()
  • How to use data in a docker container?
  • Install Discourse (a docker image) on Openshift Online
  • Docker container with Jmeter Jenkins stops after some time
  • side effect of --rm: when exit a container build with docker run --rm -v /myvol, also the volume is removed
  • Exiting: error loading config file: config file (“filebeat.yml”) can only be writable by the owner but the permissions are “-rwxrwxrwx” (to fix the permissions use: ‘chmod go-w /usr/share/filebeat/filebeat.yml’)

    My docker-compose config is:

    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"
    

    I’ve tried SSH-ing into the machine and running the chmod go-w command but no change. Is this some kind of permission limitation when working with VirtualBox shared folders on a Windows host?

  • docker - local DNS
  • Allow routing to docker 172.17.0.0/16 network without NAT?
  • Attach and run a command in a docker container
  • Docker compose wordpress plugins
  • Monolithic (vs) Micro-services ==> Threads (vs) Process
  • Gitlab runner: It is possible running an docker image that depends from another
  • One Solution collect form web for “Volume mapped filebeat.yml permissions from Docker on a Windows host”

    It looks like this is a side effect of the Windows DACL permissions system. Fortunately I only need this for a development environment so I’ve simply disabled the permission check by overriding the container entry point and passing the strict.perms argument.

    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"
    
    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.