52 lines
1.1 KiB
Markdown
52 lines
1.1 KiB
Markdown
# Bank API
|
|
|
|
REST API pre základné bankové operácie postavené na Flask, MongoDB a Nginx.
|
|
|
|
## Architektúra
|
|
|
|
- **Nginx** — reverse proxy, statický frontend
|
|
- **Backend** — Flask + Gunicorn REST API
|
|
- **MongoDB** — databáza
|
|
- **Fluent Bit** — zber logov
|
|
|
|
## Požiadavky
|
|
|
|
- Docker
|
|
- Docker Compose
|
|
|
|
## Spustenie
|
|
|
|
```bash
|
|
chmod +x prepare-app.sh start-app.sh stop-app.sh remove-app.sh
|
|
./prepare-app.sh
|
|
./start-app.sh
|
|
```
|
|
|
|
Aplikácia bude dostupná na **http://localhost:80**
|
|
|
|
## Zastavenie
|
|
|
|
```bash
|
|
./stop-app.sh
|
|
```
|
|
|
|
Opätovné spustenie: `./start-app.sh` — dáta v databáze sa zachovajú.
|
|
|
|
## Odstránenie
|
|
|
|
```bash
|
|
./remove-app.sh
|
|
```
|
|
|
|
## API endpointy
|
|
|
|
Všetky endpointy prijímajú POST s JSON telom.
|
|
|
|
| Endpoint | Popis | Parametre |
|
|
|---|---|---|
|
|
| `/api/register` | Registrácia | `username`, `password` |
|
|
| `/api/add` | Vklad | `username`, `password`, `amount` |
|
|
| `/api/transfer` | Prevod | `username`, `password`, `to`, `amount` |
|
|
| `/api/balance` | Zostatok | `username`, `password` |
|
|
| `/api/take_loan` | Pôžička | `username`, `password`, `amount` |
|
|
| `/api/pay_loan` | Splátka | `username`, `password`, `amount` | |