LXD requires Go 1.18 or higher and is only tested with the Golang compiler.
We recommend having at least 2GB of RAM to allow the build to complete.
The minimum supported kernel version is 5.4.
LXD requires a kernel with support for:
Native Linux AIO (
The following optional features also require extra kernel options:
AppArmor (including Ubuntu patch for mount mediation)
Control Groups (
CRIU (exact details to be found with CRIU upstream)
As well as any other kernel feature required by the LXC version in use.
LXD requires LXC 4.0.0 or higher with the following build options:
apparmor(if using LXD’s AppArmor support)
To run recent version of various distributions, including Ubuntu, LXCFS should also be installed.
For virtual machines, QEMU 6.0 or higher is required.
Additional libraries (and development headers)#
dqlite for its database, to build and set it up, you can
LXD itself also uses a number of (usually packaged) C libraries:
libsqlite3>= 3.25.0 (for
Make sure you have all these libraries themselves and their development
-dev packages) installed.