About a year ago I switched our dev environments from Vagrant to docker-compose environments with a "helper" shell script to run the most common docker-compose operations you'd do in a day. It starts up so much faster than Vagrant, it's easy to add new services, and it's easy to add and remove test data. Here's an example of the kind of setup I have:
https://github.com/bschwind/api-starter-kit/blob/master/help...
What's funny is I don't currently use docker in production, but I love it for dev environments.