summaryrefslogtreecommitdiff
path: root/mongodb
diff options
context:
space:
mode:
Diffstat (limited to 'mongodb')
-rw-r--r--mongodb/Dockerfile4
-rwxr-xr-xmongodb/configure.sh23
-rw-r--r--mongodb/docker-compose.yml1
-rw-r--r--mongodb/mongo-init-opendc-db.sh3
4 files changed, 28 insertions, 3 deletions
diff --git a/mongodb/Dockerfile b/mongodb/Dockerfile
index b4eb9dd1..12803f8e 100644
--- a/mongodb/Dockerfile
+++ b/mongodb/Dockerfile
@@ -1,5 +1,5 @@
-FROM mongo:4.2.5
+FROM mongo:4.2.8
MAINTAINER Jacob Burley <j.burley@vu.nl>
# Import init script
-ADD mongo-init-opendc-db.sh /docker-entrypoint-initdb.d \ No newline at end of file
+ADD mongo-init-opendc-db.sh /docker-entrypoint-initdb.d
diff --git a/mongodb/configure.sh b/mongodb/configure.sh
new file mode 100755
index 00000000..78f28ac8
--- /dev/null
+++ b/mongodb/configure.sh
@@ -0,0 +1,23 @@
+if [ -z "$OPENDC_DB" ]; then
+ echo "OPENDC_DB environment variable not specified"
+ exit 1
+fi
+
+if [ -z "$OPENDC_DB_USERNAME" ]; then
+ echo "OPENDC_DB_USERNAME environment variable not specified"
+ exit 1
+fi
+
+if [ -z "$OPENDC_DB_PASSWORD" ]; then
+ echo "OPENDC_DB_PASSWORD environment variable not specified"
+ exit 1
+fi
+
+MONGO_COMMAND="mongo $OPENDC_DB -u $OPENDC_DB_USERNAME -p $OPENDC_DB_PASSWORD --authenticationDatabase $OPENDC_DB"
+
+until eval $MONGO_COMMAND --eval 'db.getCollectionNames();' ; do
+ echo "MongoDB is unavailable - sleeping"
+ sleep 1
+done
+
+echo "MongoDB available"
diff --git a/mongodb/docker-compose.yml b/mongodb/docker-compose.yml
index aa54a74c..87af4d6f 100644
--- a/mongodb/docker-compose.yml
+++ b/mongodb/docker-compose.yml
@@ -13,6 +13,7 @@ services:
OPENDC_DB_PASSWORD: opendcpassword
ports:
- 27017:27017
+ # Uncomment for persistent deployment
#volumes:
# - mongo-volume:/data/db
diff --git a/mongodb/mongo-init-opendc-db.sh b/mongodb/mongo-init-opendc-db.sh
index e7a787fe..5ff62f8b 100644
--- a/mongodb/mongo-init-opendc-db.sh
+++ b/mongodb/mongo-init-opendc-db.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-echo 'Creating opendc user and db'
+echo 'Creating OpenDC user and database'
mongo opendc --host localhost \
--port 27017 \
@@ -17,6 +17,7 @@ $MONGO_CMD --eval 'db.createCollection("users");'
$MONGO_CMD --eval 'db.createCollection("simulations");'
$MONGO_CMD --eval 'db.createCollection("topologies");'
$MONGO_CMD --eval 'db.createCollection("experiments");'
+$MONGO_CMD --eval 'db.createCollection("traces");'
$MONGO_CMD --eval 'db.createCollection("prefabs");'
echo 'Loading test data'