From dad4487fddaccf44240f5d62fa83830f7bbf8a5d Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Tue, 24 Oct 2017 12:07:09 +0200 Subject: bug(#6): Improve Docker deployment This change improves the Docker deployment by moving the build process from runtime to (image) build time. Also, the opendc-integration-jpa module now consists of a core and mysql module, where the mysql module is a specific deployment of the integration. --- opendc-integration-jpa/mysql/Dockerfile | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 opendc-integration-jpa/mysql/Dockerfile (limited to 'opendc-integration-jpa/mysql/Dockerfile') diff --git a/opendc-integration-jpa/mysql/Dockerfile b/opendc-integration-jpa/mysql/Dockerfile new file mode 100644 index 00000000..75e419b4 --- /dev/null +++ b/opendc-integration-jpa/mysql/Dockerfile @@ -0,0 +1,30 @@ +# Docker mysql image for the OpenDC simulator project +# This image requires the context to be set to the root directory of the project in order to correctly build. +FROM gradle:alpine +MAINTAINER Fabian Mastenbroek + +# 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-integration-jpa:mysql:installDist + +# Fix permissions +RUN chown -R gradle:gradle $APP_HOME + +# Downgrade user +USER gradle + +# Start the Gradle application on run +CMD opendc-integration-jpa/mysql/build/install/mysql/bin/mysql + -- cgit v1.2.3