40 lines
983 B
Markdown
40 lines
983 B
Markdown
# fastapi-todo-api
|
|
|
|
Minimalan FastAPI REST API s PostgreSQL bazom — za studentske GitOps vježbe na FPMOZ.
|
|
|
|
## Endpointi
|
|
|
|
| Metoda | URL | Opis |
|
|
|--------|-----|------|
|
|
| GET | `/health` | Status aplikacije i baze |
|
|
| GET | `/todos` | Lista svih zapisa |
|
|
| GET | `/todos/{id}` | Jedan zapis |
|
|
| POST | `/todos` | Kreiraj zapis |
|
|
| PUT | `/todos/{id}` | Ažuriraj zapis |
|
|
| DELETE | `/todos/{id}` | Obriši zapis |
|
|
|
|
Swagger dokumentacija: `http://localhost:8000/docs`
|
|
|
|
## Lokalno pokretanje
|
|
|
|
```
|
|
docker compose up --build
|
|
```
|
|
|
|
## Environment varijable
|
|
|
|
| Varijabla | Default | Opis |
|
|
|-----------|---------|------|
|
|
| `DATABASE_HOST` | `localhost` | Hostname baze |
|
|
| `DATABASE_PORT` | `5432` | Port baze |
|
|
| `POSTGRES_USER` | `fastapiuser` | Korisnik baze |
|
|
| `POSTGRES_PASSWORD` | `student123` | Lozinka baze |
|
|
| `POSTGRES_DB` | `fastapidb` | Naziv baze |
|
|
|
|
## Build i push na Docker Hub
|
|
|
|
```
|
|
docker build -t vasic/fastapi-todo-api:1.0 .
|
|
docker push vasic/fastapi-todo-api:1.0
|
|
```
|