StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Application & Data
  3. Infrastructure as a Service
  4. Virtual Machine Management
  5. LXC vs Vagrant

LXC vs Vagrant

OverviewComparisonAlternatives

Overview

Vagrant
Vagrant
Stacks11.9K
Followers7.8K
Votes1.5K
LXC
LXC
Stacks116
Followers223
Votes19
GitHub Stars5.0K
Forks1.2K

LXC vs Vagrant: What are the differences?

  1. Containerization vs. Virtualization: One key difference between LXC and Vagrant is the underlying technology they use. LXC (Linux Containers) is a containerization technology that allows for efficient utilization of resources by sharing the host's kernel among multiple containers. On the other hand, Vagrant uses virtualization technology, such as VirtualBox or VMware, to create fully isolated virtual machines (VMs) with dedicated resources.

  2. OS-Level vs. Hypervisor-Level: LXC operates at the operating system (OS) level, allowing each container to run its own isolated Linux user space with shared kernel resources. In contrast, Vagrant works at the hypervisor level, providing complete virtualization of hardware resources including CPU, memory, and storage, enabling the use of different operating systems within the VMs.

  3. Lightweight vs. Heavier Footprint: LXC containers are known for their lightweight nature, as they share the host's kernel with minimal overhead. This results in faster startup times, lower memory footprint, and better overall performance. Vagrant, due to its use of full virtualization, has a heavier footprint as it requires the complete replica of the underlying hardware, leading to more resource utilization.

  4. Easier Configuration and Management vs. Comprehensive Environment Provisioning: LXC containers can be easily configured and managed using tools like Docker, allowing for quick deployments and scalability. Vagrant, on the other hand, provides a more robust environment provisioning capability. It allows for repeatable setups through the use of configuration files, provision scripts, and support for complex multi-machine setups.

  5. Portability vs. Platform-specificity: LXC containers offer high portability as they leverage standard Linux kernel features. This enables containers to run seamlessly across different Linux distributions and versions. In contrast, Vagrant relies on specific hypervisors, making it less portable and more dependent on the availability of compatible hypervisors across different operating systems.

  6. Native vs. Cross-Platform Support: LXC is a native containerization technology available on Linux platforms, making it well-integrated with the Linux ecosystem. It leverages Linux namespaces, cgroups, and other features to provide containerization. Vagrant, on the other hand, is a cross-platform tool that supports multiple operating systems, allowing developers to create and manage VMs on various platforms, including Windows, macOS, and Linux.

In summary, the key differences between LXC and Vagrant lie in the technology used (containerization vs. virtualization), the level at which they operate (OS-level vs. hypervisor-level), the lightweight nature of containers compared to VMs, the ease of configuration and management, the portability across different distributions, and the native vs. cross-platform support.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Detailed Comparison

Vagrant
Vagrant
LXC
LXC

Vagrant provides the framework and configuration format to create and manage complete portable development environments. These development environments can live on your computer or in the cloud, and are portable between Windows, Mac OS X, and Linux.

LXC is a userspace interface for the Linux kernel containment features. Through a powerful API and simple tools, it lets Linux users easily create and manage system or application containers.

Boxes;Up And SSH;Synced Folders;Provisioning;Networking;Share;Teardown;Rebuild;Providers
-
Statistics
GitHub Stars
-
GitHub Stars
5.0K
GitHub Forks
-
GitHub Forks
1.2K
Stacks
11.9K
Stacks
116
Followers
7.8K
Followers
223
Votes
1.5K
Votes
19
Pros & Cons
Pros
  • 352
    Development environments
  • 290
    Simple bootstraping
  • 237
    Free
  • 139
    Boxes
  • 130
    Provisioning
Cons
  • 2
    Can become v complex w prod. provisioner (Salt, etc.)
  • 2
    Multiple VMs quickly eat up disk space
  • 1
    Development environment that kills your battery
Pros
  • 5
    Easy to use
  • 4
    Lightweight
  • 3
    Simple and powerful
  • 3
    Good security
  • 2
    LGPL
Integrations
Amazon EC2
Amazon EC2
Microsoft Azure
Microsoft Azure
DigitalOcean
DigitalOcean
HP Cloud Compute
HP Cloud Compute
Joyent Cloud
Joyent Cloud
Rackspace Cloud Servers
Rackspace Cloud Servers
SoftLayer
SoftLayer
VirtualBox
VirtualBox
No integrations available

What are some alternatives to Vagrant, LXC?

Docker

Docker

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

boot2docker

boot2docker

boot2docker is a lightweight Linux distribution based on Tiny Core Linux made specifically to run Docker containers. It runs completely from RAM, weighs ~27MB and boots in ~5s (YMMV).

LXD

LXD

LXD isn't a rewrite of LXC, in fact it's building on top of LXC to provide a new, better user experience. Under the hood, LXD uses LXC through liblxc and its Go binding to create and manage the containers. It's basically an alternative to LXC's tools and distribution template system with the added features that come from being controllable over the network.

Otto

Otto

Otto automatically builds development environments without any configuration; it can detect your project type and has built-in knowledge of industry-standard tools to setup a development environment that is ready to go. When you're ready to deploy, otto builds and manages an infrastructure, sets up servers, builds, and deploys the application.

libvirt

libvirt

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.

rkt

rkt

Rocket is a cli for running App Containers. The goal of rocket is to be composable, secure, and fast.

Azk

Azk

azk lets developers easily and quickly install and configure development environments on their computers.

Vagrant Cloud

Vagrant Cloud

Vagrant Cloud pairs with Vagrant to enable access, insight and collaboration across teams, as well as to bring exposure to community contributions and development environments.

Studio 3T

Studio 3T

It's the only MongoDB tool that provides three ways to explore data alongside powerful features like query autocompletion, polyglot code generation, a stage-by-stage aggregation query builder, import and export, SQL query support and more.

XenServer

XenServer

It is a leading virtualization management platform optimized for application, desktop and server virtualization infrastructures. It is used in the world's largest clouds and enterprises.

Related Comparisons

GitHub
Bitbucket

Bitbucket vs GitHub vs GitLab

GitHub
Bitbucket

AWS CodeCommit vs Bitbucket vs GitHub

Kubernetes
Rancher

Docker Swarm vs Kubernetes vs Rancher

gulp
Grunt

Grunt vs Webpack vs gulp

Graphite
Kibana

Grafana vs Graphite vs Kibana