User Tools

Site Tools


lxc:lxc_vs_docker

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
lxc:lxc_vs_docker [2021/01/03 14:21] peterlxc:lxc_vs_docker [2021/01/03 14:53] (current) peter
Line 1: Line 1:
 ====== 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^ ^ ^LXC^Docker^
-^Architecture|Supports a fully-virtualized Linux OS including boot-up procedures|Single image and running as an application| +^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|Single container, single application| +^Purposes|Run multiple applications in a single Linux VM.|Run a single application within a single container.
-|:::|Requires a fully-functional Linux OS|Rapid deployment and migration across platforms| +^Requirements|Requires a fully-functional Linux OS.|Running isolated containers simultaneously.
-|:::|:::|Running isolated containers simultaneously| +^Advantages|A lightweight alternative to virtual machines.|Rapid and easy deployment.
-^Advantages|A lightweight alternative to virtual machines|Rapid and easy deployment| +|:::|More flexible.|Application-centric, portable deployment across machines.
-|:::|More flexible|Application-centric, portable deployment across machines| +|:::|Data can be saved in a container.|Component re-use.
-|:::|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.| 
-|:::|:::|Tool ecosystem|+|:::| |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.1609683706.txt.gz · Last modified: 2021/01/03 14:21 by peter

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki