From ed5e88f5ca87cf051cf4db61865107415387cf03 Mon Sep 17 00:00:00 2001 From: Giancarmine Salucci Date: Wed, 6 May 2026 19:17:18 +0200 Subject: [PATCH] fix: install yt-dlp via pip instead of prebuilt binary The prebuilt yt-dlp binary is compiled against glibc and fails on Alpine Linux (musl libc) with 'cannot execute'. Install python3 + py3-pip and use pip to install yt-dlp instead. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- Dockerfile | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 89fccf9..2d920df 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,10 +22,9 @@ FROM node:22-alpine AS runtime WORKDIR /app # Runtime tools + timezone data -RUN apk add --no-cache ffmpeg tzdata && \ - wget -qO /usr/local/bin/yt-dlp \ - https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp && \ - chmod +x /usr/local/bin/yt-dlp +# yt-dlp prebuilt binary requires glibc; Alpine uses musl → install via pip instead +RUN apk add --no-cache ffmpeg tzdata python3 py3-pip && \ + pip3 install --no-cache-dir --break-system-packages yt-dlp # Copy built output and production node_modules # node:22-alpine ships with user node (uid=1000, gid=1000)