Container and Registry

Learn about the differences between virtualization and containerization.

In the old days, physical servers ran single applications, resulting in the underutilization of hardware resources; it was impossible to enforce boundaries for running multiple applications on the server. This led to virtualization, which allowed the creation of multiple virtual instances of physical resources on a single physical machine. In this lesson, we will review virtualization and containerization and understand their differences. Then, we will learn about the container orchestration and different container orchestration services available in AWS, and lastly, we will focus on the Container Registry offered by AWS aka Amazon Elastic Container Registry.

Virtualization

Virtualization refers to the isolated logical dividing of a machine into virtual machines such that each application running has its own OS, libraries required and the application. Multiple VMs can exist on the same physical machine, resulting in better resource utilization than running a single application on a server. Virtualization requires a hypervisor that manages the multiple VMs on a single machine. Since each VM has its own OS, this approach has its own limits, as only a limited number of VMs can share a single physical machine due to the processing and storage limitations of a server.

Containerization

Due to such limitations, containerization emerged as the natural successor of virtualization. Containerization is logically isolated spaces on physical machines that use the same operating system. Containerization is more granular and flexible than virtualization as it does not require different OSs running on the same machine to occupy storage and CPU.

Containerization encapsulates everything an application needs to run, including the code, runtime, libraries, and dependencies, ensuring consistency and predictability across different computing environments.

Get hands-on with 1400+ tech skills courses.