Virtualization and Containerization
Hardware, VMs and Hypervisors
Servers required huge capital and operational expenditures. Scaling those servers would entail more expenditures, so teams would purchase overpowered machines that would end up underused.
Virtual machines would take advantage of those huge machines. They weren’t ideal though. VMs would require full operating systems (often entailing licensing costs for each). OSes require frequent security patching and maintenance.
Containers
Containers are lightweight isolations of compute, memory, and system resources running on a host operating system. Docker is software that makes running containers like this easy.