lxc:lxc_vs_docker
LXC - LXC vs Docker
LXC allows the creation and running of multiple isolated Linux virtual environments on a single control host.
- It allows you to not only isolate applications, but even the entire OS.
- As there is no preloaded emulation manager software, it runs with no added overhead; i.e. faster and with less RAM.
- There is no hardware emulation, which means that aside from a small memory software penalty, LXC will boast bare metal performance characteristics because it only packages the needed applications.
A Docker container does not include a separate operating system; instead it relies on the operating system’s own functionality as provided by the underlying infrastructure.
- Docker packages the application and all its dependencies in a virtual container that can run on any Linux server.
- Packages the entire OS and machine setup, including hard drive, virtual processors and network interfaces.
- CON: The resulting bloated mass usually takes a long time to boot and consumes a lot of CPU and RAM.
- PRO: It can be transferred and quickly installed onto another host.
LXC | Docker | |
---|---|---|
Architecture | Supports a fully-virtualized Linux OS including boot-up procedures. | Single image running as an application. |
Purposes | Run multiple applications in a single Linux VM. | Run a single application within a single container. |
Requirements | Requires a fully-functional Linux OS. | Running isolated containers simultaneously. |
Advantages | A lightweight alternative to virtual machines. | Rapid and easy deployment. |
More flexible. | Application-centric, portable deployment across machines. | |
Data can be saved in a container. | Component re-use. | |
Versioning: Docker includes git-like capabilities for tracking successive versions of a container, inspecting the diff between versions, committing new versions, rolling back etc. | ||
Component reuse: Docker allows building or stacking of already created packages. This allows re-use of a 'template' image, for creating other containers. | ||
Shared libraries: There is already a public registry (http://index.docker.io/ ) where there are many thousands of containers that can be used; which have been created by other people. WARNING: These are not all secure; with many trojans! |
lxc/lxc_vs_docker.txt · Last modified: 2021/01/03 14:53 by peter