From 099a1829dd9c0f326a103de70c717ddea985a03c Mon Sep 17 00:00:00 2001 From: Alessandro Ros Date: Thu, 1 Jan 2026 22:52:39 +0100 Subject: [PATCH] move away from balenalib Docker images (#5313) --- docker/ffmpeg-rpi.Dockerfile | 30 ++++++++++++++++++++++++++---- docker/rpi.Dockerfile | 30 ++++++++++++++++++++++++++---- 2 files changed, 52 insertions(+), 8 deletions(-) diff --git a/docker/ffmpeg-rpi.Dockerfile b/docker/ffmpeg-rpi.Dockerfile index b5619507..14d19966 100644 --- a/docker/ffmpeg-rpi.Dockerfile +++ b/docker/ffmpeg-rpi.Dockerfile @@ -6,15 +6,37 @@ ADD binaries/mediamtx_*_linux_armv7.tar.gz /linux/arm/v7 ADD binaries/mediamtx_*_linux_arm64.tar.gz /linux/arm64 ################################################################# +FROM --platform=linux/arm/v7 debian:bullseye-slim AS base-arm-v7 -FROM --platform=linux/arm/v6 balenalib/raspberry-pi:bullseye-run-20240508 AS base-arm-v6 -FROM --platform=linux/arm/v7 balenalib/raspberry-pi:bullseye-run-20240508 AS base-arm-v7 -FROM --platform=linux/arm64 balenalib/raspberrypi3-64:bullseye-run-20240429 AS base-arm64 +# even though the base image is arm v7, +# Raspbian libraries and compilers provide arm v6 compatibility. + +RUN apt update \ + && apt install -y wget gpg \ + && echo "deb http://archive.raspbian.org/raspbian bullseye main rpi firmware" > /etc/apt/sources.list \ + && echo "deb http://archive.raspberrypi.org/debian bullseye main" > /etc/apt/sources.list.d/raspi.list \ + && wget -O- https://archive.raspbian.org/raspbian.public.key | gpg --dearmor -o /etc/apt/trusted.gpg.d/raspbian.gpg \ + && wget -O- https://archive.raspberrypi.org/debian/raspberrypi.gpg.key | gpg --dearmor -o /etc/apt/trusted.gpg.d/raspberrypi.gpg \ + && rm -rf /var/lib/apt/lists/* + +RUN apt update && apt install --reinstall -y \ + libc6 \ + libstdc++6 \ + && rm -rf /var/lib/apt/lists/* + +################################################################# +FROM --platform=linux/arm64 debian:bullseye-slim AS base-arm64 + +RUN apt update \ + && apt install -y wget gpg \ + && echo "deb http://archive.raspberrypi.org/debian bullseye main" > /etc/apt/sources.list.d/raspi.list \ + && wget -O- https://archive.raspberrypi.org/debian/raspberrypi.gpg.key | gpg --dearmor -o /etc/apt/trusted.gpg.d/raspberrypi.gpg \ + && rm -rf /var/lib/apt/lists/* ################################################################# FROM --platform=linux/amd64 scratch AS base -COPY --from=base-arm-v6 / /linux/arm/v6 +COPY --from=base-arm-v7 / /linux/arm/v6 COPY --from=base-arm-v7 / /linux/arm/v7 COPY --from=base-arm64 / /linux/arm64 diff --git a/docker/rpi.Dockerfile b/docker/rpi.Dockerfile index 16c3736f..6f860fe0 100644 --- a/docker/rpi.Dockerfile +++ b/docker/rpi.Dockerfile @@ -6,15 +6,37 @@ ADD binaries/mediamtx_*_linux_armv7.tar.gz /linux/arm/v7 ADD binaries/mediamtx_*_linux_arm64.tar.gz /linux/arm64 ################################################################# +FROM --platform=linux/arm/v7 debian:bullseye-slim AS base-arm-v7 -FROM --platform=linux/arm/v6 balenalib/raspberry-pi:bullseye-run-20240508 AS base-arm-v6 -FROM --platform=linux/arm/v7 balenalib/raspberry-pi:bullseye-run-20240508 AS base-arm-v7 -FROM --platform=linux/arm64 balenalib/raspberrypi3-64:bullseye-run-20240429 AS base-arm64 +# even though the base image is arm v7, +# Raspbian libraries and compilers provide arm v6 compatibility. + +RUN apt update \ + && apt install -y wget gpg \ + && echo "deb http://archive.raspbian.org/raspbian bullseye main rpi firmware" > /etc/apt/sources.list \ + && echo "deb http://archive.raspberrypi.org/debian bullseye main" > /etc/apt/sources.list.d/raspi.list \ + && wget -O- https://archive.raspbian.org/raspbian.public.key | gpg --dearmor -o /etc/apt/trusted.gpg.d/raspbian.gpg \ + && wget -O- https://archive.raspberrypi.org/debian/raspberrypi.gpg.key | gpg --dearmor -o /etc/apt/trusted.gpg.d/raspberrypi.gpg \ + && rm -rf /var/lib/apt/lists/* + +RUN apt update && apt install --reinstall -y \ + libc6 \ + libstdc++6 \ + && rm -rf /var/lib/apt/lists/* + +################################################################# +FROM --platform=linux/arm64 debian:bullseye-slim AS base-arm64 + +RUN apt update \ + && apt install -y wget gpg \ + && echo "deb http://archive.raspberrypi.org/debian bullseye main" > /etc/apt/sources.list.d/raspi.list \ + && wget -O- https://archive.raspberrypi.org/debian/raspberrypi.gpg.key | gpg --dearmor -o /etc/apt/trusted.gpg.d/raspberrypi.gpg \ + && rm -rf /var/lib/apt/lists/* ################################################################# FROM --platform=linux/amd64 scratch AS base -COPY --from=base-arm-v6 / /linux/arm/v6 +COPY --from=base-arm-v7 / /linux/arm/v6 COPY --from=base-arm-v7 / /linux/arm/v7 COPY --from=base-arm64 / /linux/arm64