Update 'zadanie1/README.md'

This commit is contained in:
Ondrej Ladomirják 2022-03-19 14:31:58 +00:00
parent 28232c9903
commit b4cc64a253

View File

@ -1,4 +1,6 @@
# Základy klaudových technológií - Zadanie 1 #
# Ondrej Ladomirják #
@ -6,10 +8,20 @@
Táto aplikácia sa skladá z dvoch kontajnerov **mongodb a mongo-express** a slúži na správu NoSQL databázy **MongoDB**. Keďže práca s databázou cez príkazový riadok nie je veľmi "user-friendly", tak súčasťou je taktiež webové rozhranie pre správu databázy **Mongo-Express**, v ktorom možno vytvárať nové databázy, kolekcie, a pridávať do novovytvorených kolekcií potrebné záznami.
### Pomenované zväzky a virtuálna sieť ###
Kontajner mongodb obsahuje jeden pomenovaný zvazok s názvom **mongo-db-data**, ktorý slúži na uchovanie stavu aplikácie a teda zachovanie vytvorených databáz. Na to aby dokázali vytvorené kontajneri spolu komunikovať bola použitá defaultna sieť, ktorú automaticky generuje docker-compose s názvom **docker-network-zct**
Kontajner mongodb obsahuje jeden pomenovaný zväzok s názvom **mongo-db-data**, ktorý slúži na uchovanie stavu aplikácie a teda zachovanie vytvorených databáz. Na to aby dokázali vytvorené kontajneri spolu komunikovať bola použitá defaultna sieť, ktorú automaticky generuje docker-compose s názvom **docker-network-zct**
### Opis konfigurácie kontajnerov ###
Celú konfiguráciu možno nájsť v súbore docker-compose.yaml. Vytvorené boli dva kontajneri, ktorým bolo dané meno **mongodb** a **mongo-express**. Pre mongodb bola použitá najnovšia verzia obrazu **mongo** dostupnom na docker hube. Pre mongo-express to bol taktiež obraz dostupný na docker hube s názvom **mongo-express**. Oba spomínané kontajneri boli vložené do siete defaultne vytvorenej pomocou docker-compose, sieť bola premenovaná na **mongo-network**. Taktiež boli namapované porty kde pre mongodb platí, že kontajnerový port **27017** bol napovaný na lokálny port **27017** a pre mongo-express platí -> **8081:8081**. Pre vytvorenie noveho použivateľa a nastavenia jeho hesla boli v kontajneri mongodb nakonfigurované premenné prostredia **MONGO_INITDB_ROOT_USERNAME** a **MONGO_INITDB_ROOT_PASSWORD**, tento používateľ je vytvorený v *admin authentication database* a je mo pridelená rola *root*
- Celú konfiguráciu možno nájsť v súbore docker-compose.yaml.
- Vytvorené boli dva kontajneri, ktorým bolo dané meno **mongodb** a **mongo-express**.
- Pre mongodb bola použitá najnovšia verzia obrazu **mongo** dostupnom na docker hube.
- Pre mongo-express bola použitá najnovšia verzia obrazu **mongo-express** dostupnom na docker hube.
- Kontajneri boli vložené do siete defaultne vytvorenej pomocou docker-compose, sieť bola premenovaná na **mongo-network**.
- Namapované boli porty pre mongodb -> **27017:27017**.
- Namapované boli porty pre mongo-express -> **8081:8081**.
- Pre vytvorenie nového používateľa a nastavenia jeho hesla boli v kontajneri mongodb nakonfigurované premenné prostredia **MONGO_INITDB_ROOT_USERNAME** a **MONGO_INITDB_ROOT_PASSWORD**, tento používateľ je vytvorený v *admin authentication database* a je mu pridelená rola *root*.
- Pre autentifikáciu a pripojenie *mongo-express* k *mongodb* boli použité premenné prostredia **ME_CONFIG_MONGODB_ADMINUSERNAME** a **ME_CONFIG_MONGODB_ADMINPASSWORD**
- Pre komunikáciu *mongo-express* s databázovým serverom bola použitá premenná prostredia **ME_CONFIG_MONGODB_SERVER**
- Pre kontajner *mongodb* bol vytvorený pomenovaný zväzok **mongo-db-data**
### Príprava a spustenie aplikácie ###
sh start-app.sh
@ -19,3 +31,6 @@ Celú konfiguráciu možno nájsť v súbore docker-compose.yaml. Vytvorené bol
### Vymazanie aplikácie ###
sh remove-app.sh
### Sputenie aplikácie na webe ###
do vyhľadávania je potrebné zadať localhost:8081