LibreELEC.wiki
  • Introduction
  • Support
    • Log Files
    • Updating
  • Installation
    • Create Media
    • Add-Ons
    • Containers
    • Security
  • Hardware
    • Allwinner
    • Amlogic
      • BananaPi M5 / M2S
      • LaFrite
      • WeTek Hub/Play2
    • NXP - iMX6/iMX8
    • Intel x86-64 (Generic)
      • Laptops
    • Qualcomm
    • Raspberry Pi
    • Rockchip
    • Samsung (Exynos)
    • Virtual Image
  • Configuration
    • 4K / HDR
    • Blu-Ray Playback
    • Config.txt
    • Cron
    • Dual Boot
    • EDID
    • Fonts
    • Hidden WiFi
    • Hypercon
    • Hyperion
    • Infra-Red Remotes
    • LCDProc
    • Network Boot
    • Pulseaudio
    • Safe Mode
    • Samba
    • SSL/TLS Certificates
    • Startup & Shutdown
    • Useful Scripts
    • WireGuard
  • How To
    • Add Firmware
    • Blacklist Kernel Module
    • Change Bootsplash
    • Force Add-on Update
    • Add content via Samba Shares
    • Mount Network Share
  • Development
    • Building (Basics)
    • Building (Docker)
    • Building (Advanced)
    • Building (Windows WSL)
    • Beginners Guide to Git
    • Build Commands
      • Build Commands (Add-ons)
      • Build Commands LE 12.0.x
      • Build Commands LE 11.0.x
      • Build Commands LE 10.0.x
      • Build Commands LE 9.2.x
      • Build Commands LE 9.0.x
      • Build Commands LE 8.2.x
      • Build Commands LE 8.0.x
      • Build Commands LE 7.0.x
    • Nightly Images
    • Release Management
    • Website
  • Project
    • Releases
    • Forks
    • Licenses
      • Source Code
      • Documentation
    • Mirrors
Powered by GitBook
On this page
  • Useful links
  • Build Container
  • Run Commands
  • Basic
  • Advanced

Was this helpful?

Edit on GitHub
Export as PDF
  1. Development

Building (Docker)

Docker is used to build official releases, and nightly images in Ubuntu LTS 22.04 Docker containers at the teams https://github.com/LibreELEC/actions CI/CD.

PreviousBuilding (Basics)NextBuilding (Advanced)

Last updated 1 year ago

Was this helpful?

Useful links

The following links will help you get started with using docker to build LibreELEC.

Build Container

# apply patches to make the image like in CI
sed -i -e "/^USER docker/i RUN ln -s /usr/bin/gcc-10 /usr/bin/cc" tools/docker/focal/Dockerfile

# per tools/docker/README.md
docker build --pull -t libreelec tools/docker/focal

Run Commands

For a list of commands, see .

Basic

docker run \
  -it --rm \
  --log-driver none \
  -v `pwd`:/build -w /build \
  -e PROJECT=Generic \
  -e ARCH=x86_64 \
  -e MTPROGRESS=yes \
  libreelec CMD

Advanced

Limit CPU and RAM so your system remains responsive.

docker run \
  -it --rm \
  --log-driver none \
  -v `pwd`:/build -w /build \
  `# setting these the same disables swapping` \
  --memory "6g" --memory-swap "6g" \
  `# uses all cpus, but will reserve cycles on each` \
  `#--cpus "4"` \
  `# limit to certain processors` \
  --cpuset-cpus "0-3" \
  -e PROJECT=Generic \
  -e ARCH=x86_64 \
  -e MTPROGRESS=yes \
  libreelec CMD
https://github.com/LibreELEC/LibreELEC.tv/tree/master/tools/docker
https://github.com/LibreELEC/actions
Build (Basics)