summaryrefslogtreecommitdiff
path: root/opendc-model-odc/setup/Dockerfile
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2018-02-23 12:17:48 +0100
committerFabian Mastenbroek <mail.fabianm@gmail.com>2018-02-23 12:17:48 +0100
commitf691a72b12a43fa15c1617966450c55206664797 (patch)
treee76afd3b1d5673a29d71eedb9d373396976d84bd /opendc-model-odc/setup/Dockerfile
parent8666a78b86a40c1d8dab28dd18e841318c01f97f (diff)
parent86dc826db4cd91b5a6875d9ecdd64c9238d7b95c (diff)
refactor(#18): Redesign core simulation API
This change contains the redesign of the core simulation API and provides a cleaner interface for developing simulation models for the users. Closes #18
Diffstat (limited to 'opendc-model-odc/setup/Dockerfile')
-rw-r--r--opendc-model-odc/setup/Dockerfile29
1 files changed, 29 insertions, 0 deletions
diff --git a/opendc-model-odc/setup/Dockerfile b/opendc-model-odc/setup/Dockerfile
new file mode 100644
index 00000000..bfebc044
--- /dev/null
+++ b/opendc-model-odc/setup/Dockerfile
@@ -0,0 +1,29 @@
+# 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 <f.s.mastenbroek@student.tudelft.nl>
+
+# 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 assemble installDist
+
+# Fix permissions
+RUN chown -R gradle:gradle $APP_HOME
+
+# Downgrade user
+USER gradle
+
+# Start the Gradle application on run
+CMD opendc-model-odc/setup/build/install/setup/bin/setup