Dockerfile 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. FROM fedora:29
  2. # Docker build arguments
  3. ARG SOURCE_DIR=/jellyfin
  4. ARG PLATFORM_DIR=/jellyfin/deployment/fedora-package-x64
  5. ARG ARTIFACT_DIR=/dist
  6. ARG SDK_VERSION=3.1
  7. # Docker run environment
  8. ENV SOURCE_DIR=/jellyfin
  9. ENV ARTIFACT_DIR=/dist
  10. # Prepare Fedora environment
  11. RUN dnf update -y
  12. # Install build dependencies
  13. RUN dnf install -y @buildsys-build rpmdevtools git dnf-plugins-core libcurl-devel fontconfig-devel freetype-devel openssl-devel glibc-devel libicu-devel nodejs-yarn
  14. # Install DotNET SDK
  15. RUN rpm --import https://packages.microsoft.com/keys/microsoft.asc \
  16. && curl -o /etc/yum.repos.d/microsoft-prod.repo https://packages.microsoft.com/config/fedora/$(rpm -E %fedora)/prod.repo \
  17. && dnf install -y dotnet-sdk-${SDK_VERSION} dotnet-runtime-${SDK_VERSION}
  18. # Create symlinks and directories
  19. RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh \
  20. && mkdir -p ${SOURCE_DIR}/SPECS \
  21. && ln -s ${PLATFORM_DIR}/pkg-src/jellyfin.spec ${SOURCE_DIR}/SPECS/jellyfin.spec \
  22. && mkdir -p ${SOURCE_DIR}/SOURCES \
  23. && ln -s ${PLATFORM_DIR}/pkg-src ${SOURCE_DIR}/SOURCES
  24. VOLUME ${ARTIFACT_DIR}/
  25. COPY . ${SOURCE_DIR}/
  26. ENTRYPOINT ["/docker-build.sh"]