LXD is a system container and virtual machine manager

With LXD you can run hundreds of containers of a variety of Linux distributions, apply resource limits, pass in directories, USB devices or GPUs and setup any network and storage you want.

LXD containers are lightweight, secure by default and a great alternative to running Linux virtual machines.

If you want to run other Operating Systems or special Linux workloads, you can use LXD virtual machines instead

Run any Linux distribution you want

Pre-made images are available for Ubuntu, Alpine Linux, ArchLinux, CentOS, Debian, Fedora, Gentoo, OpenSUSE and more.

A full list of available images can be found here:

Can't find the distribution you want? It's easy to make your own images too, either using our distrobuilder tool or by assembling your own image tarball by hand.

Containers and VMs at scale

LXD is network aware and all interactions go through a simple REST API, making it possible to remotely interact with instances on remote systems, copying and moving them as you wish.

Want to go big? LXD also has built-in clustering support, letting you turn dozens of servers into one big LXD server.

Configuration options

Supported options for the LXD snap (snap set lxd KEY=VALUE):

  • ceph.builtin: Use snap-specific Ceph configuration [default=false]
  • ceph.external: Use the system's ceph tools (ignores ceph.builtin) [default=false]
  • criu.enable: Enable experimental live-migration support [default=false]
  • daemon.debug: Increase logging to debug level [default=false]
  • Set group of users that can interact with LXD [default=lxd]
  • daemon.preseed: Pass a YAML configuration to lxd init on initial start
  • daemon.syslog: Send LXD log events to syslog [default=false]
  • lvm.external: Use the system's LVM tools [default=false]
  • lxcfs.pidfd: Start per-container process tracking [default=false]
  • lxcfs.loadavg: Start tracking per-container load average [default=false]
  • lxcfs.cfs: Consider CPU shares for CPU usage [default=false]
  • openvswitch.builtin: Run a snap-specific OVS daemon [default=false]
  • shiftfs.enable: Enable shiftfs support [default=auto]



Get it from the Snap Store

Search for another snap, or go back to the homepage.