Problem with NFS mount as backing filesystem

I installed docker on Redhat (the CentOS version), and got the “hello world” container to run successfully. But, that uses /var/lib/docker, which is local storage, and I really need to use our NetApp, so I created an NFS mount, and edited the /etc/docker/daemon.json file to be the following:

{ "graph": "/docker_data/host_bases/infkubdoc-1" }

Now, when I try to start the hello world container, I get this error:

Error response from daemon: error creating overlay mount to /docker_data/host_bases/infkubdoc-1/overlay/ad9d34ba625957fd99aa9b4d2ad0c4fcfdcbf4eae497c21bbfb1ead2bdd2d50a-init/merged: invalid argument.

Any ideas why I’m getting this?

When I look at docker info, I get the following:

Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 1
Server Version: 17.09.0-ce
Storage Driver: overlay
 Backing Filesystem: nfs
 Supports d_type: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 06b9cb35161009dcb7123345749fef02f7cea8e0
runc version: 3f2f8b84a77f73d38244dd690525642a72156c64
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 3.10.0-693.2.2.el7.x86_64
Operating System: Red Hat Enterprise Linux
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 31.1GiB
Name: infkubdoc-1.llnl.gov
ID: 36BC:Y3DU:EENS:VORW:CO54:EKC4:VEFM:SZ27:SQWP:KWY3:R3EZ:GQLO
Docker Root Dir: /docker_data/host_bases/infkubdoc-1
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

So, if change my daemon.json to be:

{
   "graph": "/docker_data/host_bases/infkubdoc-1",
   "storage-driver": "devicemapper"
}

it works, but then i get this warning when I do ‘docker info’:

WARNING: devicemapper: usage of loopback devices is strongly discouraged for production use. Use `--storage-opt dm.thinpooldev` to specify a custom block storage device.

Am I still doing it wrong?

John