Reference: https://www.netapp.com/devops-solutions/what-are-containers/
Two reasons for using containers are to minimize resource overhead and to deploy microservices as
building blocks to distributed applications. Containers minimize resource overhead because they
share the kernel of the host operating system and do not require a full operating system for each
application or service. Containers enable microservices architecture by allowing developers to create
modular and independent components that can communicate with each other through APIs.