Přeskočit obsah

Lokální instalace (PC)

Lokální instalace běží na jednom počítači (typicky notebook u vstupu) s databází SQLite. Další zařízení ve stejné síti (mobil, tablet) se k ní připojí přes IP adresu počítače.

Požadavky

  • Python 3.11 nebo novější. Na Windows při instalaci zaškrtněte Add Python to PATH.
  • Git, nebo repozitář stažený jako ZIP.
  • Otevřený port aplikace ve firewallu (výchozí 8000), pokud se mají připojovat další zařízení.

Windows: instalační skripty

V kořeni repozitáře jsou připravené skripty:

Skript Co dělá
install_app.bat Vytvoří virtuální prostředí, nainstaluje balíčky, provede migrace a nabídne vytvoření administrátora.
start_server.bat Spustí server s HTTPS na portu 8000 a otevře prohlížeč na https://127.0.0.1:8000.
update_app.bat Zkontroluje novou verzi, stáhne ji a provede migrace.

Port ve firewallu povolíte příkazem (CMD spuštěný jako správce):

netsh advfirewall firewall add rule name="OdbavTo" protocol=TCP dir=in localport=8000 action=allow profile=private,domain

Ruční instalace

1. Stažení a virtuální prostředí

git clone https://github.com/michaelkalus/OdbavTo.git
cd OdbavTo
python -m venv venvTBM

Aktivace prostředí:

venvTBM\Scripts\activate
Set-ExecutionPolicy Unrestricted -Scope Process
venvTBM\Scripts\Activate.ps1
source venvTBM/bin/activate

2. Balíčky a konfigurace

pip install -r requirements.txt
cp .env.example .env        # Windows: copy .env.example .env

V .env nastavte vlastní SECRET_KEY a do ALLOWED_HOSTS přidejte IP adresu počítače:

SECRET_KEY=<nahodny-retezec>
ALLOWED_HOSTS=127.0.0.1,localhost,192.168.1.50

3. Databáze a uživatelé

python manage.py migrate
python manage.py createsuperuser     # administrator pro /admin/

Migrace na prázdné databázi založí i běžného uživatele odbavto / odbavto. Heslo po prvním přihlášení změňte.

4. Spuštění s HTTPS

Kamera a WebUSB vyžadují HTTPS. Pro lokální síť stačí self-signed certifikát:

python manage.py runserver_plus 0.0.0.0:8000 --cert-file cert.crt --key-file cert.key

Pokud soubory certifikátu neexistují, vygenerují se. Otevřete https://127.0.0.1:8000 (z jiného zařízení https://<IP-pocitace>:8000) a varování prohlížeče o certifikátu potvrďte.

WebSockety a agent

Tisk přes agenta nebo WebSocket potřebuje běžící Redis (REDIS_HOST, REDIS_PORT). Pro WebUSB, síťový tisk a Direct Redis potřeba není.

Aktualizace

git pull
pip install -r requirements.txt
python manage.py migrate

Pak server restartujte. Na Windows stačí spustit update_app.bat.