2.4 KiB
2.4 KiB
Zadanie 1
Opis aplikacie
Tato aplikacia je jednoducha webova aplikacia nasadena pomocou Docker Compose. Umoznuje zapisat meno cez webove rozhranie do databazy PostgreSQL a nasledne zobrazit zoznam ulozenych zaznamov. Aplikacia obsahuje frontend, backend, databazu a webove rozhranie Adminer na pracu s databazou.
Potrebny software
- Linux
- Docker
- Docker Compose plugin (
docker compose)
Pouzite kontajnery
nginx:latest- webovy server pre staticke subory frontendunode:18- backend aplikacie postaveny zo suborubackend/Dockerfilepostgres:15- relacna databaza PostgreSQLadminer- webove rozhranie na pracu s databazou
Siete a zvazky
Docker Compose vytvori predvolenu virtualnu siet, v ktorej spolu komunikujú sluzby:
webbackenddbadminer
Pouzity pomenovany trvaly zvazok:
db_data- uklada databazove data PostgreSQL, aby zostali zachovane aj po zastaveni aplikacie
Konfiguracia kontajnerov
webbezi v kontajneri s Nginx a spristupnuje frontend na porte8080backendbezi v Node.js kontajneri a je dostupny na porte5000dbbezi ako PostgreSQL databaza s premennymiPOSTGRES_USER,POSTGRES_PASSWORDaPOSTGRES_DBadminerje dostupny na porte8081- vsetky sluzby maju nastavene
restart: always - backend zavisi od databazy a Adminer zavisi od databazy
Navod na pouzitie
Priecinok projektu:
cd z1
Spustenie aplikacie:
./start-app.sh
Zastavenie aplikacie:
./stop-app.sh
Alternativne je mozne aplikaciu spustit aj priamo cez Docker Compose:
docker compose up -d
Pristup cez webovy prehliadac
- Hlavna aplikacia:
http://localhost:8080 - Backend API:
http://localhost:5000 - Adminer:
http://localhost:8081
Prihlasovacie udaje do PostgreSQL:
- system:
PostgreSQL - server:
db - username:
user - password:
password - database:
mydb
Priklad prace s aplikaciou
- Otvorte
http://localhost:8080 - Zadajte meno do formulara
- Kliknite na tlacidlo
Save & Show - Udaj sa ulozi do databazy a zobrazi v zozname
Zdroje
- Docker dokumentacia
- Docker Compose dokumentacia
- Nginx oficialny image na Docker Hub
- Node.js oficialny image na Docker Hub
- PostgreSQL oficialny image na Docker Hub
- Adminer oficialny image na Docker Hub
Pouzitie umelej inteligencie
Pri priprave dokumentacie a pomocnych skriptov bola pouzita umele inteligencia vo forme AI agenta Codex.