What is the difference between a container and a virtual machine? Where does the isolation actually come from?
TL;DR: A VM runs a full guest kernel on virtualised hardware. A container is an ordinary Linux process whose view is narrowed by namespaces and whose resources are capped by cgroups, sharing the host kernel. Sharing avoids booting a guest kernel, but startup still includes image pulls and application initialization. The shared kernel also shapes the security boundary.