What is containerization?
Containers are a form of virtualization that allows you to package an application with all its dependencies together. Because of that, you can port the whole package to reproduce an environment, anywhere else.
Virtualization is a technique for spinning virtual versions of physical hardware and operating systems to run software in them. It makes it possible to run multiple, and even completely different operating systems on a single machine, in parallel or one at a time.
Back when I started working as a developer, most virtualization was done using virtual machines (VMs). VMs are much more complex than containers, and they require a hypervisor to run. That makes them beeffier, slower, and more resource-intensive than containers, typically requiring additional software and configuration to run.