diff --git a/build.sh b/build.sh
index b39a2ed285e3711f6711b89f0a073b7429d6e520..7512161596e6f8d323de1f91792e3995caba3671 100755
--- a/build.sh
+++ b/build.sh
@@ -1,16 +1,11 @@
 #!/bin/bash -e
+
 if groups $USER | grep &>/dev/null '\bdocker\b'; then
   DOCKER_COMPOSE="docker-compose"
 else
   DOCKER_COMPOSE="sudo docker-compose"
 fi
 
-# Create a symlink to the local Maven repository
-[ -L .m2 ] || ln -s -t . ~/.m2
-
-$DOCKER_COMPOSE --file=docker-compose.init.yml --project-name=portal-backend-init up
-
-echo "Need to set the current user as owner of the files generated in target directory..."
-sudo chown -R $USER:$USER ./target
+cp target/mip.jar src/docker/build/
 
-echo "Done"
+$DOCKER_COMPOSE build
diff --git a/run.sh b/run.sh
index 13c4f109ab2583c34c067a18ab97f064534c9e9b..3483bbcfcb1c7446b56537d6792375c48896efe9 100755
--- a/run.sh
+++ b/run.sh
@@ -1,9 +1,20 @@
 #!/bin/bash -e
 
+# Run the backend in a Docker container and start the database.
+# The current project is compiler inside the Docker container
+
 if groups $USER | grep &>/dev/null '\bdocker\b'; then
   DOCKER_COMPOSE="docker-compose"
 else
   DOCKER_COMPOSE="sudo docker-compose"
 fi
 
-$DOCKER_COMPOSE up
+# Create a symlink to the local Maven repository
+[ -L .m2 ] || ln -s -t . ~/.m2
+
+$DOCKER_COMPOSE --file=docker-compose.init.yml --project-name=portal-backend-init up
+
+echo "Need to set the current user as owner of the files generated in target directory..."
+sudo chown -R $USER:$USER ./target
+
+echo "Done"
diff --git a/src/docker/build/.gitignore b/src/docker/build/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..d392f0e82c4ac6dd2e7bb17eb9253e1b30d07105
--- /dev/null
+++ b/src/docker/build/.gitignore
@@ -0,0 +1 @@
+*.jar
diff --git a/src/docker/build/Dockerfile b/src/docker/build/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..1369edf76009678d08db82e5e5ce87ef7b829f85
--- /dev/null
+++ b/src/docker/build/Dockerfile
@@ -0,0 +1,19 @@
+# This Dockerfile encapsulate the MIP portal  backend application for development purposes.
+
+FROM maven:3-jdk-8
+
+RUN apt-get update && apt-get install -y wget
+RUN wget https://github.com/jwilder/dockerize/releases/download/v0.2.0/dockerize-linux-amd64-v0.2.0.tar.gz
+RUN tar -C /usr/local/bin -xzvf dockerize-linux-amd64-v0.2.0.tar.gz
+
+COPY mip.sh /opt/portal/
+COPY mip.jar /opt/portal/lib/
+RUN chmod +x /opt/portal/mip.sh
+EXPOSE 8080
+
+VOLUME /opt/portal/config/
+VOLUME /opt/portal/lib/
+
+WORKDIR /opt/portal/
+
+CMD ["/usr/local/bin/dockerize", "-timeout", "240s", "-wait", "tcp://portaldb:5432", "/opt/portal/mip.sh"]
diff --git a/src/docker/build/mip.sh b/src/docker/build/mip.sh
new file mode 100644
index 0000000000000000000000000000000000000000..cfae68474c42a1e66b80edb0ea849911ddd8eef4
--- /dev/null
+++ b/src/docker/build/mip.sh
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+
+/usr/bin/java -DconfigFile=/opt/portal/config/application.yml -jar /opt/portal/lib/mip.jar