How to place Docker images ontop of an NFS share in CoreOS?
Good news, you're not the first person with a need to do this. Docker cannot use direct NFS because it needs both support for extended attributes (xttrs) to be able to store options like kernel capabilities, SELinux context, etc. By faking things out by using device mapper to create a virtualized block device on remote storage you are providing the required kernel mechanisms to utilize Docker via a secondary mechanism. While this can be configured via the dm.loopdatasize
option, as they explicitly point out on the Docker page "Note: This option configures devicemapper loopback, which should not be used in production.".
In the end this comes down to the requirements on the underlying storage. Docker is merely using mechanisms provided by the kernel and not doing magic on it's own.