The approach I've been taking so far is SSH-ing into some machine (local or remote), and executing `docker` (client) on that machine. But this requires SSH access. There have been a lot of container-only hosts popping up and Vagrant couldn't access those. Now it can.
Why would you want Vagrant to access those? Because if Vagrant can access the Docker containers, you get a lot of nice things that Vagrant gives you for free. Besides the workflow, the main benefit is synced folders.
With the synced folder abstraction in 1.4, and an upcoming ability for Vagrant to sync folders using rsync or scp with or without inotify, Vagrant will be able to sync your container files locally down onto your machine.
Again, why does this matter?
Because, say you compile your web app into a Docker container for deployments (and now dev). You can edit files on your own machine just like Vagrant has always let you, these files get automatically synced over to the Docker host, and Docker runs the web app like normal. BAM!
Anyways, the next version of Vagrant will be able to do this with or without the Docker client installed. But if the Docker client is not installed, then it will use SSH, which requires SSH access on the Docker host. But with the Docker client, you just get it for free, which is super cool.