diff options
| author | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2020-07-18 17:22:47 +0200 |
|---|---|---|
| committer | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2020-08-24 19:48:09 +0200 |
| commit | 55c7dd85f2cf215c302c4bb9f21a15d9dc2b489d (patch) | |
| tree | 10b8a4efbe9a829d4e5abe79eb6f151d8ba4e91c /simulator | |
| parent | bde8b51fc40a02e6e8514ff428a748a133502c34 (diff) | |
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.
Diffstat (limited to 'simulator')
| -rw-r--r-- | simulator/Dockerfile | 32 |
1 files changed, 8 insertions, 24 deletions
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 <opendc@atlarge-research.com> -# 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 |
