# Containers

The awesome folks at [LinuxServer.io](https://linuxserver.io) maintain a range of popular Docker containers installable as Kodi add-ons. After installing the Docker add-on (from the LibreELEC add-on repo) you can install the LinuxServer repo add-on (from the LibreELEC add-on repo) and then install container add-ons from within the Kodi GUI. To make maintenance easier LinuxServer add-ons are designed to pull the latest Docker image automatically on Kodi startup to keep the containers fresh.

It is also possible to install Docker containers manually from the SSH console using `docker pull` commands. This allows you to install a container from any public container repository. This is also how you can access the full [fleet of LinuxServer containers](https://fleet.linuxserver.io).

## Container Architecture

Docker containers often ship in multiple CPU "architecture" or "arch" variants. To run, the container architecture must match the "userspace" CPU arch of the LibreELEC image which can be different from "kernel" CPU architecture. The userspace arch is noted in the image filename, e.g.

* LibreELEC-Generic.**x86\_64**-11.0.1.img.gz has `x86_64` userspace
* LibreELEC-RPi4.**arm**-11.0.1.img.gz has `arm` userspace
* LibreELEC-RPi4.**aarch64**-12.0-nightly-20230310.img.gz has `aarch64` userspace

Userspace CPU arch can also be read from the `/etc/os-release` file in the filesystem, e.g.

```
RPi4:~ # cat /etc/os-release 
NAME="LibreELEC"
VERSION="11.0.3"
ID="libreelec"
VERSION_ID="11.0"
PRETTY_NAME="LibreELEC (official): 11.0.3"
HOME_URL="https://libreelec.tv"
BUG_REPORT_URL="https://github.com/LibreELEC/LibreELEC.tv"
BUILD_ID="1189cdb0f43e6f4208f747d54fefb70478ebee9d"
LIBREELEC_ARCH="RPi4.arm"  <= This contains the userspace CPU arch
LIBREELEC_BUILD="official"
LIBREELEC_PROJECT="RPi"
LIBREELEC_DEVICE="RPi4"
```

Docker containers may also use different arch naming, e.g.

* The `arm` arch may be referred to as `linux/arm` and `linux/arm/v7`
* The `aarch64` arch may be referred to as `linux/arm64` and `linux/arm64/v8`
* The `x86_64` arch may be referred to as `amd64`

{% hint style="warning" %}
LibreELEC 12 will switch most ARM SoC devices capable of running a 64-bit kernel from `arm` to `aarch64` userspace. This will require affected users to remove `arm` containers before they update and redeploy `arm64` versions post-update.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.libreelec.tv/installation/docker.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
