Category: Software, Microsoft, Kubernetes, Ubuntu, Docker, automation

LXC (LinuX Containers) is a OS-level virtualization technology that allows creation and running of multiple isolated Linux virtual environments (VE) on a single control host. LXC uses Linux’s cgroups functionality, which was introduced in version 2.6.24 to allow the host CPU to better partition memory allocation into isolation levels called namespaces .

Docker is developed in the Go language and utilizes LXC, cgroups, and the Linux kernel itself.

Part of this has to do with Docker’s key innovation of single-process containers, over and above the standard multiprocess containers that LXC provided.

With LXC, a large part of this complexity is avoided since LXC runs a standard OS init for each container, providing a standard Linux operating system for your apps to live in. As a result, migrating from a VM or bare metal server is often easier to do if you are moving to LXC containers, unlike if you want to move to Docker containers.

Related Articles