Need advice about which tool to choose?Ask the StackShare community!
Docker vs libvirt: What are the differences?
Docker: Enterprise Container Platform for High-Velocity Innovation. The Docker Platform is the industry-leading container platform for continuous, high-velocity innovation, enabling organizations to seamlessly build and share any application — from legacy to what comes next — and securely run them anywhere; libvirt: An open-source virtualization API. It is an open-source API, daemon and management tool for managing platform virtualization. It can be used to manage KVM, Xen, VMware ESXi, QEMU and other virtualization technologies.
Docker can be classified as a tool in the "Virtual Machine Platforms & Containers" category, while libvirt is grouped under "Virtual Machine Management".
Some of the features offered by Docker are:
- Integrated developer tools
- open, portable images
- shareable, reusable apps
On the other hand, libvirt provides the following key features:
- manage virtualization platforms
- accessible from C, Python, Perl, Java and more
- supports KVM, QEMU, Xen, Virtuozzo, VMWare ESX, LXC, BHyve and more
Docker is an open source tool with 54.4K GitHub stars and 15.7K GitHub forks. Here's a link to Docker's open source repository on GitHub.
lxd/lxc and Docker aren't congruent so this comparison needs a more detailed look; but in short I can say: the lxd-integrated administration of storage including zfs with its snapshot capabilities as well as the system container (multi-process) approach of lxc vs. the limited single-process container approach of Docker is the main reason I chose lxd over Docker.
Pros of Docker
- Rapid integration and build up824
- Isolation690
- Open source520
- Testability and reproducibility505
- Lightweight459
- Standardization217
- Scalable184
- Upgrading / downgrading / application versions105
- Security87
- Private paas environments84
- Portability33
- Limit resource usage25
- Game changer16
- I love the way docker has changed virtualization15
- Fast13
- Concurrency11
- Docker's Compose tools7
- Easy setup5
- Fast and Portable5
- Because its fun4
- Makes shipping to production very simple3
- It's dope2
- Highly useful2
- HIgh Throughput1
- Very easy to setup integrate and build1
- Package the environment with the application1
- Does a nice job hogging memory1
- Open source and highly configurable1
- Simplicity, isolation, resource effective1
- MacOS support FAKE1
- Its cool1
- Docker hub for the FTW1
- Super1
Pros of libvirt
- Low overhead2
- Free2
- Built into most Linux distros2
- Fast2
- Native KVM and QEMU2
- Native hypervisor2
- Can fully manage via CLI or VirtManager2
- VirtIO direct hardware access2
- VirtIO direct hardware support1
Sign up to add or upvote prosMake informed product decisions
Cons of Docker
- New versions == broken features8
- Unreliable networking6
- Documentation not always in sync6
- Moves quickly4
- Not Secure3