Skip to content
Reto Gantenbein edited this page Jan 3, 2024 · 20 revisions

Installation Guide

These instructions describe how the LXC/LXD packages built in the ganto/lxc4 COPR project from the spec files hosted in this repository can be used to run LXC or LXD on a Fedora Linux host.

IMPORTANT

These packages are not official Fedora packages and they are only minimally functionally tested. Use them at your own risk and don't forget to create a backup before you perform an update. If you find an issue with the packages, please open a Github issue in this repository. However I won't provide any general LXC/LXD support. For this please check https://discuss.linuxcontainers.org/

Prerequisites

Currently the packages are available for the supported Fedora releases as well as Rawhide and the x86_64, aarch64, ppc64le and s390x architectures.

Enable the COPR repository:

dnf copr enable ganto/lxc4

LXC

Install LXC including liblxc and the lxc-* command line utilities:

dnf install lxc

If you already have LXC installed from the Fedora repository run:

dnf update lxc

IMPORTANT

This will replace the official lxc packages in case you had previously installed them from the Fedora repositories. However, the release numbers of the COPR packages are chosen in way, that the official lxc packages should replace the COPR packages again once the same (or newer) version is provided by Fedora.

Incus

Incus is a community fork of LXD that was created after LXD has been moved to the Canonical umbrella. Install it via:

dnf install incus

NOTE

This is a first pre-release of Incus. It's not considered stable yet and some things might still be broken.

Container Support

In case you only want to run containers and don't need all the dependencies for virtual machine support simply disable the weak dependencies:

dnf --setopt=install_weak_deps=False install incus

Virtual Machine Support

If you want to install support for virtual machines later run:

dnf install incus-agent

In case you have disabled the weak dependencies in your dnf.conf you still need the following dependencies:

dnf install edk2-ovmf genisoimage qemu-char-spice qemu-device-display-virtio-vga qemu-device-display-virtio-gpu qemu-device-usb-redirect qemu-img qemu-kvm-core

LXD

Install the LXD daemon and the lxc command line client:

dnf install lxd

Container Support

In case you only want to run containers and don't need all the dependencies for virtual machine support simply disable the weak dependencies:

dnf --setopt=install_weak_deps=False install lxd

Virtual Machine Support

If you want to run virtual machines with LXD additional packages are required:

dnf install lxd-agent

In case you have disabled the weak dependencies in your dnf.conf you still need the following dependencies:

dnf install edk2-ovmf genisoimage qemu-char-spice qemu-device-display-virtio-vga qemu-device-display-virtio-gpu qemu-device-usb-redirect qemu-img qemu-kvm-core

Getting started

For more details please check the upstream documentation: