浏览代码

Merge pull request #910 from nvllsvm/make_it_so

Enhance Dockerfiles
Andrew Rabert 6 年之前
父节点
当前提交
b86f049e66
共有 3 个文件被更改,包括 22 次插入17 次删除
  1. 2 3
      Dockerfile
  2. 12 9
      Dockerfile.arm
  3. 8 5
      Dockerfile.arm64

+ 2 - 3
Dockerfile

@@ -3,9 +3,8 @@ ARG DOTNET_VERSION=2
 FROM microsoft/dotnet:${DOTNET_VERSION}-sdk as builder
 WORKDIR /repo
 COPY . .
-RUN export DOTNET_CLI_TELEMETRY_OPTOUT=1 \
- && dotnet clean \
- && dotnet publish \
+ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
+RUN dotnet publish \
     --configuration release \
     --output /jellyfin \
     Jellyfin.Server

+ 12 - 9
Dockerfile.arm

@@ -1,20 +1,23 @@
-# Requires binfm_misc registration for arm                                                               
-# https://github.com/multiarch/qemu-user-static#binfmt_misc-register 
+# Requires binfm_misc registration
+# https://github.com/multiarch/qemu-user-static#binfmt_misc-register
 ARG DOTNET_VERSION=3.0
 
 
-FROM multiarch/qemu-user-static:x86_64-arm as qemu                                                       
-FROM alpine as qemu_extract                                                                                  
-COPY --from=qemu /usr/bin qemu-arm-static.tar.gz                                                         
+FROM multiarch/qemu-user-static:x86_64-arm as qemu
+FROM alpine as qemu_extract
+COPY --from=qemu /usr/bin qemu-arm-static.tar.gz
 RUN tar -xzvf qemu-arm-static.tar.gz
 
 FROM microsoft/dotnet:${DOTNET_VERSION}-sdk-stretch as builder
 WORKDIR /repo
 COPY . .
-#TODO Remove or update the sed line when we update dotnet version.
-RUN export DOTNET_CLI_TELEMETRY_OPTOUT=1 \
- && find . -type f -exec sed -i 's/netcoreapp2.1/netcoreapp3.0/g' {} \; \
- && dotnet publish \
+ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
+# TODO Remove or update the sed line when we update dotnet version.
+RUN find . -type f -exec sed -i 's/netcoreapp2.1/netcoreapp3.0/g' {} \;
+# Discard objs - may cause failures if exists
+RUN find . -type d -name obj | xargs -r rm -r
+# Build
+RUN dotnet publish \
     -r linux-arm \
     --configuration release \
     --output /jellyfin \

+ 8 - 5
Dockerfile.arm64

@@ -1,4 +1,4 @@
-# Requires binfm_misc registration for aarch64
+# Requires binfm_misc registration
 # https://github.com/multiarch/qemu-user-static#binfmt_misc-register
 ARG DOTNET_VERSION=3.0
 
@@ -12,10 +12,13 @@ RUN tar -xzvf qemu-aarch64-static.tar.gz
 FROM microsoft/dotnet:${DOTNET_VERSION}-sdk-stretch as builder
 WORKDIR /repo
 COPY . .
-#TODO Remove or update the sed line when we update dotnet version.
-RUN export DOTNET_CLI_TELEMETRY_OPTOUT=1 \
- && find . -type f -exec sed -i 's/netcoreapp2.1/netcoreapp3.0/g' {} \; \
- && dotnet publish \
+ENV DOTNET_CLI_TELEMETRY_OPTOUT=1
+# TODO Remove or update the sed line when we update dotnet version.
+RUN find . -type f -exec sed -i 's/netcoreapp2.1/netcoreapp3.0/g' {} \;
+# Discard objs - may cause failures if exists
+RUN find . -type d -name obj | xargs -r rm -r
+# Build
+RUN dotnet publish \
     -r linux-arm64 \
     --configuration release \
     --output /jellyfin \