Bind mount not created / Docker provider

I’m trying to create a bind mount on a Docker host using the docker provider’s swarm resource docker_service:

mounts {
    target    = "/data"
    source    = "/data"
    type      = "bind"
    read_only = false
      }

But unless the /data directory already exists on the host the mount fails. As I understand it the host directory should be created by mounts if it doesn’t exist.