diff --git a/Dockerfile b/Dockerfile index 2f5f88a..d82ca22 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,9 @@ FROM alpine:3.4 MAINTAINER Adam Dodman -ENV UID=787 UNAME=plex GID=990 GNAME=media -ENV debs "libc6 libgcc1 libstdc++6 plexmediaserver" -ENV destdir "/plex" +ENV UID=787 UNAME=plex GID=990 GNAME=media DESTDIR="/plex" +ENV GLIBC_LIBRARY_PATH="$DESTDIR/lib" GLIBC_LD_LINUX_SO="/plex/lib/ld-linux-x86-64.so.2" +ENV DEBS="libc6 libgcc1 libstdc++6 plexmediaserver" ADD start_pms.patch /tmp/start_pms.patch @@ -20,7 +20,7 @@ RUN addgroup -g $GID $GNAME \ && wget http://ftp.debian.org/debian/pool/main/g/gcc-4.9/libstdc++6_4.9.2-10_amd64.deb \ && wget -O plexmediaserver.deb 'https://plex.tv/downloads/latest/1?channel=8&build=linux-ubuntu-x86_64&distro=ubuntu' \ - && for pkg in $debs; do \ + && for pkg in $DEBS; do \ mkdir $pkg; \ cd $pkg; \ ar x ../$pkg*.deb; \ @@ -28,17 +28,11 @@ RUN addgroup -g $GID $GNAME \ cd ..; \ done \ - && mkdir -p $destdir/lib \ + && mkdir -p $GLIBC_LIBRARY_PATH \ - && mv libc6/lib/x86_64-linux-gnu/* $destdir/lib \ - && mv libgcc1/lib/x86_64-linux-gnu/* $destdir/lib \ - && mv libstdc++6/usr/lib/x86_64-linux-gnu/* $destdir/lib \ - - && echo "export GLIBC_LIBRARY_PATH=/plex/lib" >"$destdir/lib/vars.sh" \ - && echo "export GLIBC_LD_LINUX_SO=/plex/lib/ld-linux-x86-64.so.2" >>"$destdir/lib/vars.sh" \ - && chmod +x $destdir/lib/vars.sh \ - - && . $destdir/lib/vars.sh \ + && mv libc6/lib/x86_64-linux-gnu/* $GLIBC_LIBRARY_PATH \ + && mv libgcc1/lib/x86_64-linux-gnu/* $GLIBC_LIBRARY_PATH \ + && mv libstdc++6/usr/lib/x86_64-linux-gnu/* $GLIBC_LIBRARY_PATH \ && find plexmediaserver/usr/lib/plexmediaserver -type f -perm /0111 -exec sh -c "file --brief \"{}\" | grep -q "ELF" && patchelf --set-interpreter \"$GLIBC_LD_LINUX_SO\" \"{}\" " \; \ @@ -46,10 +40,10 @@ RUN addgroup -g $GID $GNAME \ && cd plexmediaserver/usr/sbin/ \ && patch < start_pms.patch \ && cd /tmp \ - && sed -i "s||$destdir|" plexmediaserver/usr/sbin/start_pms \ + && sed -i "s||$DESTDIR|" plexmediaserver/usr/sbin/start_pms \ - && mv plexmediaserver/usr/sbin/start_pms $destdir/ \ - && mv plexmediaserver/usr/lib/plexmediaserver $destdir/plex-media-server \ + && mv plexmediaserver/usr/sbin/start_pms $DESTDIR/ \ + && mv plexmediaserver/usr/lib/plexmediaserver $DESTDIR/plex-media-server \ && apk del --no-cache xz binutils patchelf file \ && rm -rf /tmp/*