notebook
This commit is contained in:
@@ -0,0 +1,115 @@
|
||||
# Python Runner na Unraid — návod
|
||||
|
||||
## Příprava
|
||||
|
||||
Zkopíruj `Dockerfile` a `docker-compose.yml` na tower do složky, např.:
|
||||
```
|
||||
/mnt/user/Scripts/python-runner/
|
||||
```
|
||||
|
||||
Přes Unraid terminál (Tools → Terminal):
|
||||
```bash
|
||||
mkdir -p /mnt/user/Scripts/python-runner
|
||||
```
|
||||
|
||||
Pak přes Windows zkopíruj oba soubory do `\\tower\Scripts\python-runner\`.
|
||||
|
||||
---
|
||||
|
||||
## Jednorázové sestavení image
|
||||
|
||||
```bash
|
||||
cd /mnt/user/Scripts/python-runner
|
||||
docker compose build
|
||||
```
|
||||
|
||||
Trvá 1–2 minuty, stáhne Python 3.12 a nainstaluje balíčky.
|
||||
|
||||
---
|
||||
|
||||
## Spuštění containeru
|
||||
|
||||
```bash
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
Container poběží na pozadí pořád (restartuje se i po rebootu tower).
|
||||
|
||||
---
|
||||
|
||||
## Spuštění skriptu
|
||||
|
||||
```bash
|
||||
docker exec -it python-runner python /scripts/parse_emails_v1.0.py
|
||||
```
|
||||
|
||||
S parametry (pokračování po přerušení):
|
||||
```bash
|
||||
docker exec -it python-runner python /scripts/parse_emails_v1.0.py --skip-existing
|
||||
```
|
||||
|
||||
Test na 50 emailech:
|
||||
```bash
|
||||
docker exec -it python-runner python /scripts/parse_emails_v1.0.py --limit 50 --no-indexes
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Spuštění na pozadí (doporučeno pro 48h import)
|
||||
|
||||
```bash
|
||||
docker exec -d python-runner python /scripts/parse_emails_v1.0.py --skip-existing
|
||||
```
|
||||
|
||||
Přepínač `-d` pustí skript na pozadí — terminál můžeš zavřít.
|
||||
|
||||
### Sledování průběhu (log)
|
||||
|
||||
```bash
|
||||
# Spusť skript s logováním do souboru:
|
||||
docker exec -d python-runner bash -c \
|
||||
"python /scripts/parse_emails_v1.0.py --skip-existing > /scripts/parse_emails.log 2>&1"
|
||||
|
||||
# Sleduj průběh živě:
|
||||
docker exec -it python-runner tail -f /scripts/parse_emails.log
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Jakýkoliv jiný skript
|
||||
|
||||
Stačí skript hodit do `\\tower\Scripts\` a spustit:
|
||||
```bash
|
||||
docker exec -it python-runner python /scripts/nazev_skriptu.py
|
||||
```
|
||||
|
||||
Pokud skript potřebuje nový pip balíček:
|
||||
```bash
|
||||
docker exec -it python-runner pip install nazev-balicku
|
||||
```
|
||||
|
||||
(Nainstaluje se do běžícího containeru. Po `docker compose down/up` zmizí — pro trvalé přidej do Dockerfile a znovu `docker compose build`.)
|
||||
|
||||
---
|
||||
|
||||
## Zastavení / restart
|
||||
|
||||
```bash
|
||||
docker compose stop # zastaví container
|
||||
docker compose start # znovu spustí
|
||||
docker compose down # zastaví a odstraní container (image zůstane)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Cesty uvnitř containeru
|
||||
|
||||
| Na tower | Uvnitř containeru |
|
||||
|---|---|
|
||||
| `/mnt/user/Scripts` | `/scripts` |
|
||||
| `/mnt/user/JNJEMAILS` | `/mnt/JNJEMAILS` |
|
||||
|
||||
Skript má v kódu `MSGS_DIR = Path(r"\\tower\JNJEMAILS")` — **před spuštěním v Dockeru změň** na:
|
||||
```python
|
||||
MSGS_DIR = Path("/mnt/JNJEMAILS")
|
||||
```
|
||||
Reference in New Issue
Block a user