Too Long; Didn't Read
Docker lets you create a virtual machine with an operating system of your choice bundled with only your web application and its dependencies. eBay, Twitter, Spotify and Lyft have reportedly adopted Docker in their production environments. Docker provides an abstraction on top of the kernel’s support for different process namespaces, device namespaces etc. by using runc (maintained by the Open Containers Initiative) which allows it to share a lot of the host system's resources. A fully virtualized system gets its own set of resources allocated to it and does minimal sharing (if any) which results in more isolation, but it's heavier (requiring more resources)