diff --git a/z1/README.md b/z1/README.md index ede651b..8a702f8 100644 --- a/z1/README.md +++ b/z1/README.md @@ -17,102 +17,93 @@ docker --version docker-compose --version ``` -Opis aplikácie +## Opis aplikácie Táto aplikácia je jednoduchý webový systém, ktorý obsahuje frontendovú a backendovú časť: -Frontend: React aplikácia, ktorá poskytuje webové rozhranie pre používateľov. +- Frontend: React aplikácia, ktorá poskytuje webové rozhranie pre používateľov. -Backend: API server napísaný v Pythone (FastAPI alebo Flask), ktorý spracováva požiadavky od frontendu. +- Backend: API server napísaný v Pythone (FastAPI alebo Flask), ktorý spracováva požiadavky od frontendu. Aplikácia umožňuje používateľom interakciu cez webový prehliadač, pričom backend spracováva požiadavky a odosiela odpovede. Systém je navrhnutý tak, aby bol jednoduchý na nasadenie pomocou Dockeru. -Používané virtuálne siete a zväzky +## Používané virtuálne siete a zväzky Aplikácia využíva Docker Compose na vytvorenie izolovanej siete a spravovanie dát. -Virtuálna sieť: Docker Compose automaticky vytvorí vlastnú sieť, ktorá zabezpečuje komunikáciu medzi frontendom a backendom. +- Virtuálna sieť: Docker Compose automaticky vytvorí vlastnú sieť, ktorá zabezpečuje komunikáciu medzi frontendom a backendom. -Pomenované zväzky: Použité na ukladanie perzistentných dát v prípade potreby, napríklad ak by aplikácia mala databázu alebo logy. +- Pomenované zväzky: Použité na ukladanie perzistentných dát v prípade potreby, napríklad ak by aplikácia mala databázu alebo logy. -Konfigurácia kontajnerov +## Konfigurácia kontajnerov Aplikácia sa skladá z dvoch kontajnerov: -Frontend: +- Frontend: + - Port: 5174:5174 + - Závislosť: backend (musí byť dostupný pre správne fungovanie frontendu) + - Automatické reštartovanie: always (zabezpečí opätovné spustenie v prípade výpadku) + - Vytvára sa zo súborov v priečinku frontend/ -Port: 5174:5174 +- Backend: + - Port: 5000:5000 + - Automatické reštartovanie: always + - Obsahuje hlavné API aplikácie a spracováva požiadavky od frontendu + - Vytvára sa zo súborov v priečinku backend/ -Závislosť: backend (musí byť dostupný pre správne fungovanie frontendu) - -Automatické reštartovanie: always (zabezpečí opätovné spustenie v prípade výpadku) - -Vytvára sa zo súborov v priečinku frontend/ - -Backend: - -Port: 5000:5000 - -Automatické reštartovanie: always - -Obsahuje hlavné API aplikácie a spracováva požiadavky od frontendu - -Vytvára sa zo súborov v priečinku backend/ - -Používané kontajnery +## Používané kontajnery V aplikácii sú použité tieto kontajnery: -Frontend: +- Frontend: + - Technológia: React + - Poskytuje webové rozhranie aplikácie + - Beží na porte 5174 -Technológia: React +- Backend: + - Technológia: Python (FastAPI/Flask) + - Spracováva požiadavky z frontendu + - Beží na porte 5000 -Poskytuje webové rozhranie aplikácie - -Beží na porte 5174 - -Backend: - -Technológia: Python (FastAPI/Flask) - -Spracováva požiadavky z frontendu - -Beží na porte 5000 - -Príručka pre nasadenie +## Príručka pre nasadenie Na nasadenie aplikácie postupujte podľa nasledujúcich krokov: -Príprava aplikácie: +- Príprava aplikácie: +```bash ./prepare-app.sh - +``` Tento krok vytvorí potrebné Docker obrazy a pripraví aplikáciu na spustenie. -Spustenie aplikácie: +- Spustenie aplikácie: +```bash ./start-app.sh - +``` Po spustení bude aplikácia dostupná na http://localhost:5174 Pozastavenie aplikácie: +```bash ./stop-app.sh - +``` Tento príkaz zastaví všetky bežiace kontajnery bez ich odstránenia. Odstránenie aplikácie: +```bash ./remove-app.sh - +``` Tento príkaz odstráni všetky vytvorené kontajnery a ich dáta. -Príklad použitia +## Príklad použitia Po spustení aplikácie otvorte webový prehliadač a prejdite na http://localhost:5174. Na stránke by sa mala zobraziť webová aplikácia, ktorá komunikuje s backendom. Ak backend správne funguje, môžete skúsiť odoslať požiadavku cez terminál: +```bash curl -X POST http://localhost:5000/api/predict -H "Content-Type: application/json" -d '{"input": "some_data"}' - +``` Tento príkaz by mal vrátiť odpoveď z backendu, čo znamená, že komunikácia medzi frontendom a backendom je funkčná. \ No newline at end of file