Containers provide isolation between processes using cgroups and namespaces to limit resource utilization and isolate processes. Containers run within a single operating system kernel and share the kernel with other containers, using fewer resources than virtual machines which run entire guest operating systems. Docker is the most common container platform and uses containerization to package applications and their dependencies into portable containers that can be run on any Linux server.