When comparing VirtualBox vs Docker, the Slant community recommends VirtualBox for most people. In the question“What are the best power user tools for Windows?” VirtualBox is ranked 7th while Docker is ranked 28th. The most important reason people chose VirtualBox is:
VirtualBox is available for free with source code available [here](https://www.virtualbox.org/browser/vbox/trunk). A "VirtualBox Extension Pack" that includes virtual USB 2.0, VirtualBox RDP & PXE boot support is available only under a commercial license.
Ranked in these QuestionsQuestion Ranking
Pro Free and mostly open source
VirtualBox is available for free with source code available here. A "VirtualBox Extension Pack" that includes virtual USB 2.0, VirtualBox RDP & PXE boot support is available only under a commercial license.
Pro Allows for portable application deployment
Docker creates a single object, containing an application with its dependencies, that can be moved between any docker-enabled machines, guaranteeing the same environment for application execution.
Pro Git-like capabilities
Docker tracks changes in systems. It allows for commits and rollbacks and for quick deployment due to having to deploy only the updated code.
Pro Allows re-using components
Docker essentially allows creating boilerplate systems (a LAMP stack, for example) that can be used as a starting point on multiple projects. And you can find multiple such containers already created by people in their public registry.
Pro Automatic build
Allows automatically assembling a container from its source code.
Pro Provides easy sharing and installation of containers through a public registry
Docker allows easily pushing and pulling containers to and from their public index.docker.io registry. Additionally, dotCloud maintains a list of official repositories of the more popular containers.
Pro Works in virtualized environments
You can set up Docker within an already virtualized environment such as a virtual machine. This allows you to run Docker on Mac and Windows, among other use-cases.
Pro Low overhead
Pro Supports a wide range of isolation tools
Docker can be used with OpenVZ, systemd-nspawn, libvirt-lxc, libvirt-sandbox, qemu/kvm, BSD Jails, Solaris Zones, and chroot.
Pro Tool ecosystem
Con Inferior performance
Apart from second-class performance in virtualization, there are some visual glitches with Windows 8.1 on Mavericks.
Con Confusing interface and lacking usability features
VirtualBox might be a bit confusing for beginners - it requires an understanding of a lot more technical details than other VMs.