From f2c31b61156e473134230c7fd773d36e0fd92232 Mon Sep 17 00:00:00 2001 From: aNNiMON Date: Mon, 22 May 2023 00:08:54 +0300 Subject: [PATCH] Add Dockerfile, close #1 --- Dockerfile | 23 +++++++++++++++++++++++ README.md | 10 ++++++++++ 2 files changed, 33 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..17ea788 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,23 @@ +FROM gradle:7.6-jdk17-alpine AS cache +RUN mkdir -p /home/gradle/cache_home +ENV GRADLE_USER_HOME=/home/gradle/cache_home +COPY build.gradle /home/gradle/java-code/ +WORKDIR /home/gradle/java-code +RUN GRADLE_OPTS="-Xmx256m" gradle build --build-cache --stacktrace -i --no-daemon + +FROM gradle:7.6-jdk17-alpine as builder +COPY --from=cache /home/gradle/cache_home /home/gradle/.gradle +COPY . /usr/src/java-code +WORKDIR /usr/src/java-code +RUN GRADLE_OPTS="-Xmx256m" gradle shadowJar --build-cache --stacktrace --no-daemon + +FROM eclipse-temurin:17-jre-alpine +RUN apk add --no-cache python3 py3-pip ffmpeg \ + && python3 -m pip install --upgrade wheel \ + && python3 -m pip install --upgrade yt-dlp +WORKDIR /app +COPY --from=builder /usr/src/java-code/build/libs/ffmpegbot-1.0-SNAPSHOT-all.jar . +RUN mkdir input && mkdir output +COPY pytgfile.py . +COPY ffmpegbot.yaml . +ENTRYPOINT ["java", "-jar", "/app/ffmpegbot-1.0-SNAPSHOT-all.jar"] diff --git a/README.md b/README.md index b166c4a..c39d704 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,16 @@ Telegram Bot for re-encoding media ## Installation +### Using Docker + +```bash +cp ffmpegbot.yaml.template ffmpegbot.yaml +vim ffmpegbot.yaml +docker build --tag 'ffmpegbot' . +``` + +### Manual + ```bash # Build ./gradlew shadowJar