Browse Source

Use Microsoft dotnet Docker images

Joshua Boniface 6 years ago
parent
commit
7be4a8500c
2 changed files with 9 additions and 41 deletions
  1. 4 20
      deployment/debian-package-x64/Dockerfile
  2. 5 21
      deployment/ubuntu-package-x64/Dockerfile

+ 4 - 20
deployment/debian-package-x64/Dockerfile

@@ -1,9 +1,8 @@
-FROM debian:9
+FROM microsoft/dotnet:2.2-sdk-stretch
 # Docker build arguments
 ARG SOURCE_DIR=/jellyfin
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-x64
 ARG ARTIFACT_DIR=/dist
-ARG SDK_VERSION=2.2
 # Docker run environment
 ENV SOURCE_DIR=/jellyfin
 ENV ARTIFACT_DIR=/dist
@@ -11,24 +10,9 @@ ENV DEB_BUILD_OPTIONS=noddebs
 
 # Prepare Debian build environment
 RUN apt-get update \
- && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev
-
-# Install dotnet repository
-# https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
-RUN wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg \
- && mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/ \
- && wget -q https://packages.microsoft.com/config/debian/9/prod.list \
- && mv prod.list /etc/apt/sources.list.d/microsoft-prod.list \
- && chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg \
- && chown root:root /etc/apt/sources.list.d/microsoft-prod.list \
- && apt-get update \
- && apt-get install -y dotnet-sdk-${SDK_VERSION} 
-
-# Link to docker-build script
-RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh
-
-# Link to Debian source dir; mkdir needed or it fails, can't force dest
-RUN mkdir -p ${SOURCE_DIR} && ln -sf ${PLATFORM_DIR}/pkg-src ${SOURCE_DIR}/debian
+ && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev \
+ && ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh \
+ && mkdir -p ${SOURCE_DIR} && ln -sf ${PLATFORM_DIR}/pkg-src ${SOURCE_DIR}/debian
 
 # Prepare artifact volume
 VOLUME ${ARTIFACT_DIR}/

+ 5 - 21
deployment/ubuntu-package-x64/Dockerfile

@@ -1,34 +1,18 @@
-FROM ubuntu:18.04
+FROM microsoft/dotnet:2.2-sdk-bionic
 # Docker build arguments
 ARG SOURCE_DIR=/jellyfin
 ARG PLATFORM_DIR=/jellyfin/deployment/ubuntu-package-x64
 ARG ARTIFACT_DIR=/dist
-ARG SDK_VERSION=2.2
 # Docker run environment
 ENV SOURCE_DIR=/jellyfin
 ENV ARTIFACT_DIR=/dist
 ENV DEB_BUILD_OPTIONS=noddebs
 
-# Prepare Debian build environment
+# Prepare Ubuntu build environment
 RUN apt-get update \
- && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev
-
-# Install dotnet repository
-# https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
-RUN wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg \
- && mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/ \
- && wget -q https://packages.microsoft.com/config/ubuntu/18.04/prod.list \
- && mv prod.list /etc/apt/sources.list.d/microsoft-prod.list \
- && chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg \
- && chown root:root /etc/apt/sources.list.d/microsoft-prod.list \
- && apt-get update \
- && apt-get install -y dotnet-sdk-${SDK_VERSION} 
-
-# Link to docker-build script
-RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh
-
-# Link to Debian source dir; mkdir needed or it fails, can't force dest
-RUN mkdir -p ${SOURCE_DIR} && ln -sf ${PLATFORM_DIR}/pkg-src ${SOURCE_DIR}/debian
+ && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev \
+ && ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh \
+ && mkdir -p ${SOURCE_DIR} && ln -sf ${PLATFORM_DIR}/pkg-src ${SOURCE_DIR}/debian
 
 # Prepare artifact volume
 VOLUME ${ARTIFACT_DIR}/