2019-02-02 17:20:04 +00:00
|
|
|
FROM centos:7
|
2019-02-06 00:04:20 +00:00
|
|
|
# Docker build arguments
|
|
|
|
ARG SOURCE_DIR=/jellyfin
|
|
|
|
ARG PLATFORM_DIR=/jellyfin/deployment/centos-package-x64
|
|
|
|
ARG ARTIFACT_DIR=/dist
|
|
|
|
ARG SDK_VERSION=2.2
|
|
|
|
# Docker run environment
|
|
|
|
ENV SOURCE_DIR=/jellyfin
|
|
|
|
ENV ARTIFACT_DIR=/dist
|
|
|
|
|
2019-09-25 18:23:17 +00:00
|
|
|
# Prepare CentOS environment
|
2019-02-06 00:04:20 +00:00
|
|
|
RUN yum update -y \
|
2019-09-25 18:23:17 +00:00
|
|
|
&& yum install -y epel-release
|
|
|
|
|
|
|
|
# Install build dependencies
|
2019-10-08 03:02:07 +00:00
|
|
|
RUN yum install -y @buildsys-build rpmdevtools yum-plugins-core libcurl-devel fontconfig-devel freetype-devel openssl-devel glibc-devel libicu-devel wget git
|
|
|
|
|
|
|
|
# Install recent NodeJS and Yarn
|
|
|
|
RUN wget -O- https://raw.githubusercontent.com/creationix/nvm/v0.35.0/install.sh | /bin/bash \
|
|
|
|
&& source "$HOME/.nvm/nvm.sh" \
|
|
|
|
&& nvm install v8 \
|
|
|
|
&& npm install -g yarn
|
2019-09-25 18:23:17 +00:00
|
|
|
|
|
|
|
# Install DotNET SDK
|
|
|
|
RUN rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm \
|
2019-02-06 00:04:20 +00:00
|
|
|
&& rpmdev-setuptree \
|
2019-09-25 18:23:17 +00:00
|
|
|
&& yum install -y dotnet-sdk-${SDK_VERSION}
|
|
|
|
|
|
|
|
# Create symlinks and directories
|
|
|
|
RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh \
|
2019-02-10 00:06:27 +00:00
|
|
|
&& mkdir -p ${SOURCE_DIR}/SPECS \
|
|
|
|
&& ln -s ${PLATFORM_DIR}/pkg-src/jellyfin.spec ${SOURCE_DIR}/SPECS/jellyfin.spec \
|
|
|
|
&& mkdir -p ${SOURCE_DIR}/SOURCES \
|
2019-02-06 00:04:20 +00:00
|
|
|
&& ln -s ${PLATFORM_DIR}/pkg-src ${SOURCE_DIR}/SOURCES
|
|
|
|
|
|
|
|
VOLUME ${ARTIFACT_DIR}/
|
|
|
|
|
|
|
|
COPY . ${SOURCE_DIR}/
|
|
|
|
|
|
|
|
ENTRYPOINT ["/docker-build.sh"]
|