Instalace a provoz¶
OdbavTo je open-source Django aplikace, kterou můžete provozovat u sebe. Tahle část je pro správce: instalace, konfigurace, tiskárny, aktualizace a zálohy.
Varianty nasazení¶
| Server (Docker) | Lokální PC | |
|---|---|---|
| Pro koho | Víc uživatelů a akcí, přístup odkudkoli | Jedna akce, jeden notebook u vstupu |
| Databáze | PostgreSQL 17 | SQLite (soubor) |
| Běží jako | Docker Compose: web + Postgres + Redis | Python ve virtuálním prostředí |
| HTTPS | Reverzní proxy (např. Caddy) s certifikátem | Self-signed certifikát |
| Tisk | WebUSB, agent, síť (je-li tiskárna dosažitelná ze serveru) | WebUSB, síť, Direct (Windows) |
| Návod | Instalace v Dockeru | Lokální instalace |
Doporučení
Pro trvalý provoz a více uživatelů zvolte Docker na serveru. Lokální instalace se hodí, když u akce není spolehlivý internet nebo když si chcete aplikaci jen vyzkoušet.
Architektura¶
flowchart LR
U[Prohlížeč<br/>skener / kiosk] -- HTTPS + WebSocket --> P[Reverzní proxy<br/>Caddy]
P --> W[web<br/>Django + Daphne :8000]
W --> DB[(PostgreSQL 17)]
W --> R[(Redis 7<br/>WebSocket kanály)]
W -- TCP 9100 --> N[Síťová tiskárna]
A[Tiskový agent<br/>PC u vstupu] -- WebSocket / polling --> P
U -- WebUSB --> T[USB tiskárna]
- web: Django aplikace pod ASGI serverem Daphne. Obsluhuje HTTP i WebSockety (doručení tiskových úloh v reálném čase).
- PostgreSQL: data aplikace.
- Redis: jen kanálová vrstva pro WebSockety, nic neukládá trvale.
- Reverzní proxy: ukončuje HTTPS. Bez HTTPS nefunguje kamera ani WebUSB.
Požadavky na prohlížeč¶
- Skener a kiosk: libovolný moderní prohlížeč s kamerou (Chrome, Edge, Safari, Firefox).
- WebUSB tisk: jen Chromium (Chrome, Edge) na Windows, macOS a Linuxu. Na iOS nefunguje.