From fa4f45387aaab97e1a283ad3841dc67ff355b7e3 Mon Sep 17 00:00:00 2001 From: Shusui MOYATANI Date: Sun, 30 Nov 2025 13:08:53 +0900 Subject: [PATCH 1/3] Add Dockerfile --- .dockerignore | 4 ++++ Dockerfile | 29 +++++++++++++++++++++++++++++ README.md | 14 ++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..9dc93bc --- /dev/null +++ b/.dockerignore @@ -0,0 +1,4 @@ +.git +bin +build +.gradle diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..0eb1e78 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,29 @@ +FROM amazoncorretto:17-al2-jdk + +# Create a user +RUN yum update -y && \ + yum install -y shadow-utils && \ + yum clean all && \ + rm -rf /var/cache/dnf +RUN groupadd -r appuser && \ + useradd -m -r -g appuser appuser +USER appuser + +WORKDIR /app/ +RUN chown -R appuser:appuser /app + +# Install Gradle +COPY --chown=appuser:appuser ./gradle/ /app/gradle/ +COPY --chown=appuser:appuser ./gradlew /app/ +RUN ./gradlew --version --no-daemon + +# Install dependencies +COPY --chown=appuser:appuser ./build.gradle ./settings.gradle /app/ +RUN ./gradlew dependencies --no-daemon + +# Build projcet +COPY --chown=appuser:appuser . /app/ +RUN ./gradlew build shadowJar --no-daemon + +# Disable building a JAR because we already built it. +ENV SHADOW=No diff --git a/README.md b/README.md index 153b36e..76167a8 100644 --- a/README.md +++ b/README.md @@ -157,6 +157,20 @@ If you wish to run _all_ benchmarks used to generate the reports above, you can run `./run-everything`. This will take several hours to complete, so be patient. +## Run on Docker + +You can use Docker if you wish to reproduce the consistent environment +or to run benchmarks in a separate safe environment. + +Prerequisites: + +* Docker + +Build and run: + + docker build -t java-json-benchmark:latest . + docker run --rm -it java-json-benchmark:latest ./run deser + ## Run on AWS Prerequisites: From c24339a2cfe3a8a531659db939e15aa63ca3ede7 Mon Sep 17 00:00:00 2001 From: Shusui MOYATANI Date: Sun, 30 Nov 2025 13:45:09 +0900 Subject: [PATCH 2/3] Add some paths to dockerignore --- .dockerignore | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.dockerignore b/.dockerignore index 9dc93bc..6796ee0 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,4 +1,6 @@ .git +.github +.gradle bin +target build -.gradle From 576f19ba7dbae339d8034325833cbe29b3d5f739 Mon Sep 17 00:00:00 2001 From: Shusui MOYATANI Date: Fri, 5 Dec 2025 20:04:04 +0900 Subject: [PATCH 3/3] Fix typos --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 0eb1e78..ce94849 100644 --- a/Dockerfile +++ b/Dockerfile @@ -21,7 +21,7 @@ RUN ./gradlew --version --no-daemon COPY --chown=appuser:appuser ./build.gradle ./settings.gradle /app/ RUN ./gradlew dependencies --no-daemon -# Build projcet +# Build project COPY --chown=appuser:appuser . /app/ RUN ./gradlew build shadowJar --no-daemon