Sanallaştırma kavramına hakimsen, docker daha hafif bir sanallaştırma aracı. Normalde sanal bir makine kurduğun zaman fiziksel makinendeki ram/hdd/CPU kaynaklarının herbirisi için bir ayarlama yapman ve sanal makinelere paylaştırman gerekir. Docker bunun yerine linux çekirdeği üzerinde bir geliştirmeyle özellikle HDD üzerindeki ayırdığın alanı azaltıp CPU ve Ram ortak kullanıma yönelik bir yapı içeriyor.
Her kurulan sanal makine örneğine de container deniyor.