From 55c7dd85f2cf215c302c4bb9f21a15d9dc2b489d Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Sat, 18 Jul 2020 17:22:47 +0200 Subject: Make simulator image leaner This change updates the Dockerfile for the simulator to reduce its size. By using Docker stages, we can split the build image from the runtime image that only contains the runtime binaries. --- simulator/Dockerfile | 32 ++++++++------------------------ 1 file changed, 8 insertions(+), 24 deletions(-) (limited to 'simulator/Dockerfile') diff --git a/simulator/Dockerfile b/simulator/Dockerfile index 7daa8a2e..852809b3 100644 --- a/simulator/Dockerfile +++ b/simulator/Dockerfile @@ -1,27 +1,11 @@ FROM gradle:jdk14 MAINTAINER OpenDC Maintainers -# Set the home directory to our gradle user's home. -ENV HOME=/home/gradle -ENV APP_HOME=$HOME/simulator - -# Copy OpenDC simulator -COPY ./ $APP_HOME - -# Build as root -USER root - -# Set the working directory to the simulator -WORKDIR $APP_HOME - -# Build the application -RUN gradle --no-daemon :opendc:opendc-runner-web:installDist - -# Fix permissions -RUN chown -R gradle:gradle $APP_HOME - -# Downgrade user -USER gradle - -# Start the Gradle application on run -CMD opendc/opendc-runner-web/build/install/opendc-runner-web/bin/opendc-runner-web +COPY ./ /simulator +RUN cd /simulator/ \ + && gradle --no-daemon :opendc:opendc-runner-web:installDist + +FROM openjdk:14 +COPY --from=0 /simulator/opendc/opendc-runner-web/build/install /simulator +WORKDIR /simulator +CMD opendc-runner-web/bin/opendc-runner-web -- cgit v1.2.3