Docker doesn't add a whole lot over what basic Linux containers (lxc and vserver) have offered for years. Having said that, the main benefit to Docker is a change in viewpoint from "virtual machine" to "application". Docker aims to make applications portably deployable to any Docker-machine. Since Docker uses lxc (aka Linux containers), it helps to understand a little how containers are different from other virtualiz…
To be honest I've never worked out why Docker gets so much press. If you use the Ezjail utility to configure and manage FreeBSD jails you have been able to do most of the things Docker does for years (stacked fs using unionfs, templates/flavours, snapshots, export/import etc) and this seems like a much simpler and more stable solution. The networking stuff is also easy using pf.
http://en.wikipedia.org/wiki/Solaris_Containers
Of course, Solaris is even more despised by some people since they changed hands.
I think Docker appeals more to people, because:
- It's on Linux, which is more popular than FreeBSD or Solaris.
- It's very easy to set up and configure.
- Integration with Puppet et al.
- The have great marketing :).