Linux containers is a virtualization method that allows for sharing resources like CPU and memory without creating virtual machines. Linux Containers enable creating a separation layer between the operating system kernel and the application layer. Containers are widely used in the context of microservices architecture. Orchestration platforms like Kubernetes are used to manage containers.
This solution does not contain an operating system (OS), binaries, or dependencies like those you’ll find in a standard VM setup. This feature makes them lightweight, portable and makes it possible to run them across numerous different environments, regardless of their configuration.
What is LXC?
LXC is a Linux container runtime with tools, library, templates and language bindings onboard. LXC facilitates creating and managing application containers and systems.
Components of LXC—the liblxc library, language bindings for the API, tools for controlling the containers, and distribution templates for the containers.
Why use containers?
- container-based applications work efficiently in cloud environments,
- applications in containers are easy to scale,
- containers could be used as a deployment unit for microservices (and connected by network service mesh).