#syntax=docker/dockerfile:1 FROM ghcr.io/linuxserver/baseimage-ubuntu:noble # set version label ARG BUILD_DATE ARG VERSION LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}" LABEL maintainer="thelamer" # environment settings ARG DEBIAN_FRONTEND="noninteractive" ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility" ENV MALLOC_TRIM_THRESHOLD_=131072 ENV ATTACHED_DEVICES_PERMS="/dev/dri /dev/dvb /dev/vchiq /dev/vc-mem /dev/video1? -type c" RUN \ echo "**** install dependencies *****" && \ apt-get update && \ apt-get install -y --no-install-recommends \ at \ libjemalloc2 \ mesa-va-drivers \ xmlstarlet \ curl && \ echo "**** dynamically resolve latest deb URLs *****" && \ BASE_REPO_URL="https://repo.jellyfin.org/files/server/ubuntu/latest-preview/amd64" && \ # Fetch latest server deb filename for ubu2404 SERVER_DEB=$(curl -sL "${BASE_REPO_URL}/" | grep -oP 'jellyfin-server_[^"]+ubu2404_amd64\.deb' | head -n 1) && \ # Fetch latest web UI deb filename WEB_DEB=$(curl -sL "${BASE_REPO_URL}/" | grep -oP 'jellyfin-web_[^"]+all\.deb' | head -n 1) && \ # Fetch latest jellyfin-ffmpeg release download URL for noble amd64 via GitHub API FFMPEG_URL=$(curl -sL "https://api.github.com/repos/jellyfin/jellyfin-ffmpeg/releases/latest" | grep -oP 'https://[^\"]+jellyfin-ffmpeg[^\"]+noble_amd64\.deb' | head -n 1) && \ echo "**** download custom jellyfin debs *****" && \ curl -o /tmp/jellyfin-server.deb -L "${BASE_REPO_URL}/${SERVER_DEB}" && \ curl -o /tmp/jellyfin-web.deb -L "${BASE_REPO_URL}/${WEB_DEB}" && \ curl -o /tmp/jellyfin-ffmpeg.deb -L "${FFMPEG_URL}" && \ echo "**** install custom jellyfin debs *****" && \ # Install them all at once to resolve dependencies cleanly apt-get install -y \ /tmp/jellyfin-ffmpeg.deb \ /tmp/jellyfin-server.deb \ /tmp/jellyfin-web.deb && \ echo "**** cleanup ****" && \ rm -rf \ /tmp/* \ /var/lib/apt/lists/* \ /var/tmp/* # add local files #COPY root/ /