multi stage the build and add lib path so emby libs do not always take precedence to sys libs

This commit is contained in:
thelamer
2019-05-31 10:28:47 -07:00
parent 2d920e0cb1
commit 42a6da0f93
4 changed files with 66 additions and 61 deletions

View File

@@ -1,14 +1,7 @@
FROM lsiobase/ubuntu:bionic
FROM lsiobase/ubuntu:bionic as buildstage
# set version label
ARG BUILD_DATE
ARG VERSION
# build args
ARG EMBY_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thelamer"
#Add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
ENV DEBIAN_FRONTEND="noninteractive"
RUN \
@@ -36,21 +29,29 @@ RUN \
/tmp/opt/emby-server/system/* \
/tmp/opt/emby-server/lib/samba/* \
/tmp/opt/emby-server/lib/* \
/tmp/opt/emby-server/bin/ff* && \
echo "**** cleanup ****" && \
apt-get purge -y \
cpio \
jq \
rpm2cpio && \
apt-get autoremove -fy && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
/tmp/opt/emby-server/bin/ff*
# runtime stage
FROM lsiobase/ubuntu:bionic
# set version label
ARG BUILD_DATE
ARG VERSION
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thelamer"
# add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
# add local files
COPY --from=buildstage /app/emby /app/emby
COPY root/ /
# lib setup
RUN \
echo "/app/emby" > /etc/ld.so.conf.d/emby.conf && \
ldconfig
# ports and volumes
EXPOSE 8096 8920
VOLUME /config /transcode

View File

@@ -1,14 +1,7 @@
FROM lsiobase/ubuntu:arm64v8-bionic
FROM lsiobase/ubuntu:arm64v8-bionic as buildstage
# set version label
ARG BUILD_DATE
ARG VERSION
# build args
ARG EMBY_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thelamer"
#Add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
ENV DEBIAN_FRONTEND="noninteractive"
RUN \
@@ -36,21 +29,30 @@ RUN \
/tmp/opt/emby-server/system/* \
/tmp/opt/emby-server/lib/samba/* \
/tmp/opt/emby-server/lib/* \
/tmp/opt/emby-server/bin/ff* && \
echo "**** cleanup ****" && \
apt-get purge -y \
cpio \
jq \
rpm2cpio && \
apt-get autoremove -fy && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
/tmp/opt/emby-server/bin/ff*
# runtime stage
FROM lsiobase/ubuntu:arm64v8-bionic
# set version label
ARG BUILD_DATE
ARG VERSION
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thelamer"
# add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
# add local files
COPY --from=buildstage /app/emby /app/emby
COPY root/ /
# lib setup
RUN \
echo "**** add lib path ****" && \
echo "/app/emby" > /etc/ld.so.conf.d/emby.conf && \
ldconfig
# ports and volumes
EXPOSE 8096 8920
VOLUME /config /transcode

View File

@@ -1,14 +1,7 @@
FROM lsiobase/ubuntu:arm32v7-bionic
FROM lsiobase/ubuntu:arm32v7-bionic as buildstage
# set version label
ARG BUILD_DATE
ARG VERSION
# build args
ARG EMBY_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thelamer"
#Add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
ENV DEBIAN_FRONTEND="noninteractive"
RUN \
@@ -36,21 +29,30 @@ RUN \
/tmp/opt/emby-server/system/* \
/tmp/opt/emby-server/lib/samba/* \
/tmp/opt/emby-server/lib/* \
/tmp/opt/emby-server/bin/ff* && \
echo "**** cleanup ****" && \
apt-get purge -y \
cpio \
jq \
rpm2cpio && \
apt-get autoremove -fy && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
/tmp/opt/emby-server/bin/ff*
# runtime stage
FROM lsiobase/ubuntu:arm32v7-bionic
# set version label
ARG BUILD_DATE
ARG VERSION
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thelamer"
# add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
# add local files
COPY --from=buildstage /app/emby /app/emby
COPY root/ /
# lib setup
RUN \
echo "**** add lib path ****" && \
echo "/app/emby" > /etc/ld.so.conf.d/emby.conf && \
ldconfig
# ports and volumes
EXPOSE 8096 8920
VOLUME /config /transcode

View File

@@ -1,6 +1,6 @@
#!/usr/bin/with-contenv bash
LD_LIBRARY_PATH=/app/emby exec \
exec \
s6-setuidgid abc /app/emby/EmbyServer \
-programdata /config \
-ffdetect /app/emby/ffdetect \