diff --git a/server/Dockerfile.txt b/server/Dockerfile.txt new file mode 100644 index 00000000..ca6e8f2e --- /dev/null +++ b/server/Dockerfile.txt @@ -0,0 +1,33 @@ +FROM alpine/git as open-m3u8Git +WORKDIR /app +RUN git clone https://github.com/0xboobface/open-m3u8.git + +FROM gradle:4.10-jdk10 as open-m3u8Build +WORKDIR /app/open-m3u8 +COPY --from=open-m3u8Git --chown=gradle:gradle /app /app +RUN gradle install + +FROM alpine/git as ctbrecGit +WORKDIR /app +RUN git clone https://github.com/0xboobface/ctbrec.git + +FROM maven:3-jdk-11-slim as ctbrecBuild +ARG ctbrec +ARG versionM3u8 +WORKDIR /app/master +COPY --from=ctbrecGit /app/ctbrec /app +COPY --from=open-m3u8Build /app/open-m3u8/build/libs/ /app/common/libs/ +RUN mvn clean install:install-file -Dfile=/app/common/libs/open-m3u8-${versionM3u8}.jar -DgroupId=com.iheartradio.m3u8 -DartifactId=open-m3u8 -Dversion=${versionM3u8} -Dpackaging=jar -DgeneratePom=true +RUN mvn clean +RUN mvn install + +FROM openjdk:12-alpine +WORKDIR /app +ARG memory +ARG version +ENV artifact ctbrec-server-${version}-final.jar +ENV path /app/server/target/${artifact} +COPY --from=ctbrecBuild ${path} ./${artifact} +EXPOSE 8080 +CMD java ${memory} -cp ${artifact} -Dctbrec.config=/server.json ctbrec.recorder.server.HttpServer +