zkt25/sk1/README.md

3.4 KiB

Sledovač výdavkov Web App na Azure

Toto je webová aplikácia na sledovanie výdavkov, nasadená v cloude Azure s využitím kontajnerizácie a spravovaných služieb.

Popis aplikácie

Sledovač výdavkov je plnohodnotná webová aplikácia na správu osobných financií, ktorá umožňuje:

  • Pridávať, odstraňovať a upravovať finančné transakcie
  • Prezerať históriu transakcií
  • Sledovať výdavky podľa kategórií

Architektúra riešenia

Aplikácia pozostáva z nasledujúcich komponentov:

  1. Frontend: React aplikácia nasadená v Azure Container Apps

    • Vyvinutá pomocou React, TypeScript a Vite
    • Poskytuje používateľské rozhranie na správu finančných transakcií
  2. Backend API: Node.js/Express API nasadené v Azure Container Apps

    • Poskytuje RESTful API na prácu s transakciami
    • Komunikuje s MongoDB databázou
  3. Databáza: Azure Cosmos DB s MongoDB API

    • Zabezpečuje trvalé ukladanie údajov
    • Využíva MongoDB API pre kompatibilitu s existujúcim kódom

Použité služby Azure

  • Azure Container Apps: Na nasadenie Frontend a Backend aplikácií ako kontajnerov
  • Azure Container Registry: Na ukladanie a správu kontajnerových obrazov
  • Azure Cosmos DB: Na ukladanie údajov s využitím MongoDB API
  • Azure Managed Certificates: Na zabezpečenie HTTPS prístupu s platným certifikátom

Popis súborov riešenia

  • prepare-app.sh: Skript na prípravu a nasadenie aplikácie v Azure

    • Vytvára skupinu zdrojov
    • Vytvára a konfiguruje Azure Container Registry
    • Vytvára databázu Azure Cosmos DB s MongoDB API
    • Zostavuje a nahráva Docker obrazy
    • Vytvára a konfiguruje Container Apps pre Frontend a Backend
    • Nastavuje HTTPS
  • remove-app.sh: Skript na odstránenie všetkých vytvorených zdrojov z Azure

    • Úplne odstraňuje celú skupinu zdrojov
    • Zabezpečuje čisté odstránenie bez zvyškových zdrojov
  • Frontend/ a Backend/: Adresáre so zdrojovým kódom aplikácie

    • Obsahujú Dockerfile pre kontajnerizáciu
    • Sú nakonfigurované na prácu v cloudovom prostredí

Pokyny na použitie

Predpoklady

  1. Nainštalované a nakonfigurované Azure CLI
  2. Účet v Microsoft Azure s dostatočnými právami
  3. Lokálne nainštalovaný Docker

Nasadenie aplikácie

  1. Prihláste sa do Azure CLI:

    az login
    
  2. Spustite skript prípravy:

    chmod +x prepare-app.sh
    ./prepare-app.sh
    
  3. Po úspešnom nasadení dostanete URL adresy na prístup k frontendu a backendu.

Používanie aplikácie

  1. Prejdite na URL adresu frontendu, uvedenú vo výstupe skriptu prepare-app.sh
  2. Začnite pridávať, upravovať a sledovať svoje finančné transakcie

Odstránenie aplikácie

Pre úplné odstránenie všetkých vytvorených zdrojov vykonajte:

chmod +x remove-app.sh
./remove-app.sh

Technické detaily

  • Automatický reštart: Kontajnery sú nakonfigurované na automatický reštart pri zlyhaní
  • Škálovanie: Nakonfigurované automatické škálovanie od 1 do 3 replík
  • Trvalé ukladanie: Údaje sú uložené v Azure Cosmos DB
  • Bezpečnosť: Všetky spojenia sú zabezpečené HTTPS s platným certifikátom

Zoznam externých zdrojov a použitie generatívneho modelu