diff --git a/bin/run.sh b/bin/run.sh
index 143245e754ed086021c58fd8ba43481a3a3814d2..0be4d26a6e07cfe917acabc6654147916a60272c 100755
--- a/bin/run.sh
+++ b/bin/run.sh
@@ -5,7 +5,7 @@ set -e
 unset CDPATH
 cd "$( dirname "${BASH_SOURCE[0]}" )/.."
 
-echo() { builtin echo "[SCITRAN] $@"; }
+echo() { builtin echo -e "\033[1;34m\033[47mSCITRAN\033[0;0m\033[47m $@\033[0;0m"; }
 
 
 set -o allexport
@@ -21,7 +21,7 @@ if [ "$#" -gt 1 ]; then
 fi
 
 
-# Default config values
+# Minimal default config values
 SCITRAN_RUNTIME_HOST=${SCITRAN_RUNTIME_HOST:-"127.0.0.1"}
 SCITRAN_RUNTIME_PORT=${SCITRAN_RUNTIME_PORT:-"8080"}
 SCITRAN_RUNTIME_PATH=${SCITRAN_RUNTIME_PATH:-"./runtime"}
@@ -82,21 +82,13 @@ else
 fi
 
 if [ -d "$SCITRAN_RUNTIME_PATH" ]; then
-    echo "Virtualenv exists present at $SCITRAN_RUNTIME_PATH"
+    echo "Virtualenv exists at $SCITRAN_RUNTIME_PATH"
 else
     echo "Creating 'scitran' Virtualenv at $SCITRAN_RUNTIME_PATH"
     virtualenv -p `brew --prefix`/bin/python --prompt="(scitran)" $SCITRAN_RUNTIME_PATH
     echo "Created 'scitran' Virtualenv at $SCITRAN_RUNTIME_PATH"
 fi
 
-if [ -f "$SCITRAN_RUNTIME_PATH/bin/mongod" ]; then
-    echo "MongoDB is installed"
-else
-    echo "Installing MongoDB"
-    curl https://fastdl.mongodb.org/osx/mongodb-osx-x86_64-3.0.7.tgz | tar xz -C $SCITRAN_RUNTIME_PATH --strip-components 1
-    echo "MongoDB installed"
-fi
-
 
 echo "Activating Virtualenv"
 source $SCITRAN_RUNTIME_PATH/bin/activate
@@ -105,9 +97,29 @@ echo "Installing Python requirements"
 bin/install.sh
 
 
-# Launch mongod
+# Install and launch MongoDB
+install_mongo() {
+    curl $MONGODB_URL | tar xz -C $VIRTUAL_ENV/bin --strip-components 2
+    echo "MongoDB version $MONGODB_VERSION installed"
+}
+
+MONGODB_VERSION=$(cat mongodb_version.txt)
+MONGODB_URL="https://fastdl.mongodb.org/osx/mongodb-osx-x86_64-$MONGODB_VERSION.tgz"
+if [ -x "$VIRTUAL_ENV/bin/mongod" ]; then
+    INSTALLED_MONGODB_VERSION=$($VIRTUAL_ENV/bin/mongod --version | grep "db version" | cut -d "v" -f 3)
+    echo "MongoDB version $INSTALLED_MONGODB_VERSION is installed"
+    if [ "$INSTALLED_MONGODB_VERSION" != "$MONGODB_VERSION" ]; then
+        echo "Upgrading MongoDB to version $MONGODB_VERSION"
+        install_mongo
+    fi
+else
+    echo "Installing MongoDB"
+    install_mongo
+fi
+
 mongod --dbpath $SCITRAN_PERSISTENT_DB_PATH --smallfiles --port $SCITRAN_PERSISTENT_DB_PORT &
-MONGO_PID=$!
+MONGOD_PID=$!
+
 
 # Set python path so scripts can work
 export PYTHONPATH=.
@@ -159,12 +171,14 @@ ssl_pem=$SCITRAN_RUNTIME_SSL_PEM
 paste.app_factory = api.api:app_factory
 EOF
 
-paster serve --reload $TEMP_INI_FILE
+paster serve --reload $TEMP_INI_FILE &
+PASTER_PID=$!
+
+
+# Shutdown mongod and paster on SIGINT and SIGTERM
+trap "{ echo 'Exit signal trapped'; kill $MONGOD_PID $PASTER_PID; wait; }" EXIT
+wait
 
 # Clean up and exit out of the python virtualenv
 rm -f $TEMP_INI_FILE
 deactivate
-
-# Shutdown mongod on ctrl+C
-kill $MONGO_PID
-wait $MONGO_PID
diff --git a/mongodb_version.txt b/mongodb_version.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e4604e3afd0dd7b7ebf8a8064658da22c365f6ef
--- /dev/null
+++ b/mongodb_version.txt
@@ -0,0 +1 @@
+3.2.1