From 3282e8648a1ec68f6eefa25314138cf86ba375ed Mon Sep 17 00:00:00 2001 From: Vadim Date: Fri, 17 Jan 2025 10:17:47 +0400 Subject: [PATCH 1/2] feat: add Dockerfile and launching script for it --- Dockerfile | 16 ++++++++++++++++ docker/apktool.sh | 5 +++++ 2 files changed, 21 insertions(+) create mode 100644 Dockerfile create mode 100755 docker/apktool.sh diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000..d4bbb4b282 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,16 @@ +FROM gradle:8.11.1-jdk17-alpine AS build + +WORKDIR /src + +COPY . . + +RUN gradle build shadowJar proguard + + +FROM openjdk:11 + +WORKDIR /data + +COPY --from=build /src/brut.apktool/apktool-cli/build/libs/apktool-cli.jar / + +ENTRYPOINT ["java", "-Xmx1024M", "-Dfile.encoding=utf-8", "-Djdk.util.zip.disableZip64ExtraFieldValidation=true", "-Djdk.nio.zipfs.allowDotZipEntry=true", "-jar", "/apktool-cli.jar"] diff --git a/docker/apktool.sh b/docker/apktool.sh new file mode 100755 index 0000000000..0ef240d069 --- /dev/null +++ b/docker/apktool.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash -i -e + +# This one-liner simply passes the command line arguments and binds the workdir as a mount point to it + +docker run --rm --name apktool --platform=linux/amd64 --volume $(pwd -P):/data:rw -it apktool:latest "$@" From 98709b8d3f19554632b0c1684903f53bc6ad920b Mon Sep 17 00:00:00 2001 From: Vadim Belous Date: Sat, 18 Jan 2025 22:13:38 +0400 Subject: [PATCH 2/2] feat: switch default image to distroless and specify nonroot user --- Dockerfile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index d4bbb4b282..109076b45e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,10 +7,12 @@ COPY . . RUN gradle build shadowJar proguard -FROM openjdk:11 +FROM gcr.io/distroless/java:11 WORKDIR /data COPY --from=build /src/brut.apktool/apktool-cli/build/libs/apktool-cli.jar / +USER nonroot + ENTRYPOINT ["java", "-Xmx1024M", "-Dfile.encoding=utf-8", "-Djdk.util.zip.disableZip64ExtraFieldValidation=true", "-Djdk.nio.zipfs.allowDotZipEntry=true", "-jar", "/apktool-cli.jar"]