diff --git a/.env b/.env index daf7150..5088a2d 100644 --- a/.env +++ b/.env @@ -20,7 +20,7 @@ CURL_VERSION=8.4.0 # MongoDB variables MONGO_DB_PORT=27017 -MONGO_DB_VERSION=4.4 +MONGO_DB_VERSION=6.0 # Tutorial variables TUTORIAL_APP_PORT=3000 diff --git a/docker-compose/common.yml b/docker-compose/common.yml index 0c41977..64040b7 100644 --- a/docker-compose/common.yml +++ b/docker-compose/common.yml @@ -53,9 +53,7 @@ services: - mongo-db:/data/db - mongo-config:/data/configdb healthcheck: - test: | - host=`hostname --ip-address || echo '127.0.0.1'`; - mongo --quiet $host/test --eval 'quit(db.runCommand({ ping: 1 }).ok ? 0 : 2)' && echo 0 || echo 1 + test: ["CMD","mongosh", "localhost:27017/test", "--quiet"] interval: 5s # Tutorial acts as a series of dummy IoT Sensors over HTTP diff --git a/docker-compose/orion-ld.yml b/docker-compose/orion-ld.yml index 4c4e4fb..8c60949 100644 --- a/docker-compose/orion-ld.yml +++ b/docker-compose/orion-ld.yml @@ -32,7 +32,7 @@ services: - default ports: - ${EXPOSED_PORT:-1026}:${ORION_LD_PORT:-1026} # localhost:1026 - command: -dbhost mongo-db -logLevel DEBUG -forwarding -experimental + command: -dbhost mongo-db -logLevel DEBUG -forwarding -mongocOnly healthcheck: test: curl --fail -s http://orion:${ORION_LD_PORT}/version || exit 1 interval: 5s diff --git a/services b/services index ca607a6..b207dc0 100755 --- a/services +++ b/services @@ -148,43 +148,11 @@ displayServices () { echo "" } -addDatabaseIndex () { - printf "Adding appropriate \033[1mMongoDB\033[0m indexes for \033[1;34mOrion\033[0m ..." - docker exec db-mongo mongo --eval ' - conn = new Mongo();db.createCollection("orion"); - db = conn.getDB("orion"); - db.createCollection("entities"); - db.entities.createIndex({"_id.servicePath": 1, "_id.id": 1, "_id.type": 1}, {unique: true}); - db.entities.createIndex({"_id.type": 1}); - db.entities.createIndex({"_id.id": 1});' > /dev/null - docker exec db-mongo mongo --eval ' - conn = new Mongo();db.createCollection("orion-openiot"); - db = conn.getDB("orion-openiot"); - db.createCollection("entities"); - db.entities.createIndex({"_id.servicePath": 1, "_id.id": 1, "_id.type": 1}, {unique: true}); - db.entities.createIndex({"_id.type": 1}); - db.entities.createIndex({"_id.id": 1});' > /dev/null - echo -e " \033[1;32mdone\033[0m" - - printf "Adding appropriate \033[1mMongoDB\033[0m indexes for \033[1;36mIoT-Agent\033[0m ..." - docker exec db-mongo mongo --eval ' - conn = new Mongo(); - db = conn.getDB("iotagentul"); - db.getCollectionNames().forEach(c=>db[c].drop()); - db.createCollection("devices"); - db.devices.createIndex({"_id.service": 1, "_id.id": 1, "_id.type": 1}); - db.devices.createIndex({"_id.type": 1}); - db.devices.createIndex({"_id.id": 1}); - db.createCollection("groups"); - db.groups.createIndex({"_id.resource": 1, "_id.apikey": 1, "_id.service": 1}); - db.groups.createIndex({"_id.type": 1});' > /dev/null - echo -e " \033[1;32mdone\033[0m" -} addIoTDatabaseIndex () { printf "Adding appropriate \033[1mMongoDB\033[0m indexes for \033[1;36mIoT-Agent\033[0m ..." - docker exec db-mongo mongo --eval ' + docker exec db-mongo mongosh --eval ' conn = new Mongo(); db = conn.getDB("iotagentul"); db.getCollectionNames().forEach(c=>db[c].drop()); @@ -214,7 +182,6 @@ case "${command}" in ${dockerCmd} -f docker-compose/common.yml -f docker-compose/orion-ld.yml -p fiware up -d --renew-anon-volumes displayServices "orion|fiware" waitForMongo - addDatabaseIndex waitForOrion loadData orion:1026 echo -e "\033[1;34m${command}\033[0m is now running and exposed on localhost:${EXPOSED_PORT}"