Virtualmachines are very good at isolating system resources and entire working environments. On the flip side, Docker containers philosophy is to isolate individual applications, not entire systems.