From 7974e90abd31abb6830b0f87ce163c76c95192d3 Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 21:00:08 +0000 Subject: [PATCH 01/10] Delete 'index.html' --- index.html | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 index.html diff --git a/index.html b/index.html deleted file mode 100644 index 2fb587e..0000000 --- a/index.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - Cloud Web App - - -
- - - -
- From e21e856ff499b704dd45f98c6cf9438983c04324 Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 21:20:53 +0000 Subject: [PATCH 02/10] Update 'README.md' --- README.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/README.md b/README.md index e69de29..97982af 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,34 @@ +Σε αυτό το project υλοποιήσαμε μια web εφαρμογή σε Node Js και Express, η οποία τρέχει σε ένα docker swarm. Το docker swarm επίσης περιλαμβάνει ένα replica set mongodb για την αποθήκευση των δεδομένων. Η αρχιτεκτονική του mongodb replica set φαίνεται παρακάτω. + +##### MongoDB replicas set + +Μπαίνουμε στο φάκελο mongoDB_swarm και εκτελούμε + +docker-compose build + +Στην συνέχεια κάνουμε deploy το stack + +docker stack deploy -c docker-compose.yml db + +Για να δούμε που τρέχουν το καθένα service εκτελούμε το παρακάτω + +docker service ps db_rs1 db_rs2 db_rs3 + +Με την παρακάτω εντολή βλέπουμε τα δίκτυα του docker και πιο συγκεκριμένα του mongodb: + +docker network ls + + +##### NodeJS - ExpressJS web app + +Στο αρχείο server.js αλλάζουμε τα hostnames κατάλληλα + +var connectionString = "mongodb://,,/?replicaSet=&readPreference=secondaryPreferred"; + +Στην συνέχεια για να δημιουργήσουμε το image τρέχουμε: + +docker build -t + +Τέλος για την δημιουργία του container τρέχουμε: + +docker run --network --name -p 3000:8080 From 6c49e6d988597a0bb4b77e4864332f54e0443cda Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 21:28:03 +0000 Subject: [PATCH 03/10] Update 'README.md' --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 97982af..8636dff 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ Σε αυτό το project υλοποιήσαμε μια web εφαρμογή σε Node Js και Express, η οποία τρέχει σε ένα docker swarm. Το docker swarm επίσης περιλαμβάνει ένα replica set mongodb για την αποθήκευση των δεδομένων. Η αρχιτεκτονική του mongodb replica set φαίνεται παρακάτω. -##### MongoDB replicas set +![](https://media.discordapp.net/attachments/646803567747006475/721113347713531934/docker_swarm.jpg) + +### MongoDB replicas set Μπαίνουμε στο φάκελο mongoDB_swarm και εκτελούμε @@ -19,7 +21,7 @@ docker service ps db_rs1 db_rs2 db_rs3 docker network ls -##### NodeJS - ExpressJS web app +### NodeJS - ExpressJS web app Στο αρχείο server.js αλλάζουμε τα hostnames κατάλληλα From dc811eb8e7ded8e95c0401fc47d7c0652ce56516 Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 21:32:03 +0000 Subject: [PATCH 04/10] Update 'README.md' --- README.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/README.md b/README.md index 8636dff..929089f 100644 --- a/README.md +++ b/README.md @@ -34,3 +34,15 @@ docker build -t Τέλος για την δημιουργία του container τρέχουμε: docker run --network --name -p 3000:8080 + + +References + * https://medium.com/lucjuggery/mongodb-replica-set-on-swarm-mode-45d66bc9245 + * https://medium.com/statuscode/dockerising-a-node-js-and-mongodb-app-d22047e2806f + * https://nodejs.org/fr/docs/guides/nodejs-docker-webapp/ + * + + +Μέλη Ομάδας + * Παράσχου Ευθύμιος 43868 + * Αγαπίου Αντώνιος 711141081 \ No newline at end of file From 46c58519af4b0fb2c38857e4b3c844838542114e Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 21:32:19 +0000 Subject: [PATCH 05/10] Update 'README.md' --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index 929089f..5b0c595 100644 --- a/README.md +++ b/README.md @@ -40,8 +40,6 @@ References * https://medium.com/lucjuggery/mongodb-replica-set-on-swarm-mode-45d66bc9245 * https://medium.com/statuscode/dockerising-a-node-js-and-mongodb-app-d22047e2806f * https://nodejs.org/fr/docs/guides/nodejs-docker-webapp/ - * - Μέλη Ομάδας * Παράσχου Ευθύμιος 43868 From 121c183b1b798dbbaf5620b8e38a27ee6948ffce Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 21:33:12 +0000 Subject: [PATCH 06/10] Delete 'server.js.save' --- server.js.save | 47 ----------------------------------------------- 1 file changed, 47 deletions(-) delete mode 100644 server.js.save diff --git a/server.js.save b/server.js.save deleted file mode 100644 index 8812caf..0000000 --- a/server.js.save +++ /dev/null @@ -1,47 +0,0 @@ - - -// declaring dependencies -const express = require('express'); -const bodyParser= require('body-parser') -const app = express(); -// Make sure you place body-parser before your CRUD handlers! -app.use(bodyParser.urlencoded({ extended: true })) - -// Constants -const PORT = 8080; -const HOST = '0.0.0.0'; - -var MongoClient = require('mongodb').MongoClient; -var connectionString = "mongodb://10.0.5.3:27017/"; - -MongoClient.connect(connectionString, { useUnifiedTopology: true }) - .then(client => { - console.log('Connected to Database') - const db = client.db('cloudDB') - const quotesCollection = db.collection('mycollection') - - - - app.post('/quotes', (req, res) => { - quotesCollection.insertOne(req.body) - .then(result => { - res.redirect('/') - }) - .catch(error => console.error(error)) - }) - - app.get('/', (req, res) => { - const cursor = db.collection('quotes').find().toArray() - .then(results => { - console.log(results) - }) - res.sendFile(__dirname + '/index.html') - }) - - app.listen(PORT, HOST); - - }) - - -console.log(`Running on http://${HOST}:${PORT}`); - From 8d5bfb193760acad5d1be014b342e357035ba80a Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 21:38:15 +0000 Subject: [PATCH 07/10] Update 'README.md' --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 5b0c595..c21dbd7 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,9 @@ docker build -t docker run --network --name -p 3000:8080 +Η web εφαρμογή τρέχει στον παρακάτω σύνδεσμο: http://83.212.77.69:3000/ + + References * https://medium.com/lucjuggery/mongodb-replica-set-on-swarm-mode-45d66bc9245 * https://medium.com/statuscode/dockerising-a-node-js-and-mongodb-app-d22047e2806f From b696f530dfe74d9c790b9e6e209ab9c9f6ff1fa4 Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 21:38:59 +0000 Subject: [PATCH 08/10] Update 'README.md' --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c21dbd7..e4c8f14 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ docker build -t docker run --network --name -p 3000:8080 -Η web εφαρμογή τρέχει στον παρακάτω σύνδεσμο: http://83.212.77.69:3000/ +Η web εφαρμογή τρέχει στον παρακάτω σύνδεσμο: http://83.212.77.69:3000/ (Πρόσβαση μόνο μέσα σπό το VPN του πανεπιστημίου) References From ce85043dc91dc6f4977d9b6607d0ee63ff20735e Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 22:42:22 +0000 Subject: [PATCH 09/10] Update 'README.md' --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e4c8f14..3f61312 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ docker network ls Στο αρχείο server.js αλλάζουμε τα hostnames κατάλληλα -var connectionString = "mongodb://,,/?replicaSet=&readPreference=secondaryPreferred"; +var connectionString = "mongodb://<'hostname1>,,/?replicaSet=&readPreference=secondaryPreferred"; Στην συνέχεια για να δημιουργήσουμε το image τρέχουμε: From 382b970e0bcfa0e1bdb30baf176f7239a5a87b01 Mon Sep 17 00:00:00 2001 From: z3r0Luck Date: Fri, 12 Jun 2020 22:43:56 +0000 Subject: [PATCH 10/10] Update 'README.md' --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 3f61312..cb45cef 100644 --- a/README.md +++ b/README.md @@ -25,15 +25,15 @@ docker network ls Στο αρχείο server.js αλλάζουμε τα hostnames κατάλληλα -var connectionString = "mongodb://<'hostname1>,,/?replicaSet=&readPreference=secondaryPreferred"; +var connectionString = "mongodb://*hostname1*,*hostname2*,*hostname3*/?replicaSet=*setname*&readPreference=secondaryPreferred"; Στην συνέχεια για να δημιουργήσουμε το image τρέχουμε: -docker build -t +docker build -t *image-name* Τέλος για την δημιουργία του container τρέχουμε: -docker run --network --name -p 3000:8080 +docker run --network *network-name* --name *container-name* -p 3000:8080 *image-name* Η web εφαρμογή τρέχει στον παρακάτω σύνδεσμο: http://83.212.77.69:3000/ (Πρόσβαση μόνο μέσα σπό το VPN του πανεπιστημίου)