Docker Compose
A StremHU Source futtatása Dockerrel a legegyszerűbb megoldás. A hivatalos és legfrissebb image a s4pp1/stremhu-source:latest néven érhető el a Docker Hub-on. Bár az elindítás nem igényel különösebb konfigurációt, az alábbiakban bemutatjuk a haladó beállítási lehetőségeket.
Alapértelmezett konfiguráció
Egy egyszerű, minden környezetben jól működő docker-compose.yaml fájl így néz ki:
services:
stremhu-source:
image: s4pp1/stremhu-source:latest
container_name: stremhu-source
environment:
- TZ=Europe/Budapest
- HOST_IP=[IP_ADDRESS]
ports:
- '7070:7070'
network_mode: bridge
volumes:
- data:/app/data
mem_limit: '2g'
restart: unless-stopped
volumes:
data:
name: stremhu-source-dataA HOST_IP értékének helyes megadása:
- Otthoni hálózaton (router mögött): A futtató gép helyi (LAN) IP-címét kell megadnod (pl.
192.168.1.100), amit a routertől kapott. Itt sosem a publikus IP-t kell használni! - VPS esetén: Mivel a szolgáltatás közvetlenül az internetre csatlakozik és nincs előtte hagyományos router, a szerver nyilvános (publikus) IP-címét kell beírnod.
- Reverse Proxy esetén: Amennyiben a
REVERSE_PROXY_DOMAINbe van állítva a konfigurációban, aHOST_IPmegadása nem kötelező, akár el is távolítható.
Tűzfal (különösen Windows-on): Figyelj arra, hogy a beépített tűzfal (vagy vírusirtó program) alapértelmezetten blokkolhatja a bejövő kapcsolatokat. Gondoskodj róla, hogy a megadott port engedélyezve legyen.
Adatok tárolása (Kötetek / Volumes)
Alapértelmezésben a Docker egy saját belső tárhelyet, úgynevezett named volume-ot használ (a példában ez a data:/app/data hivatkozás és a fájl végi volumes: blokk).
Ez azt jelenti, hogy a Docker egy saját, elzárt mappát hoz létre a rendszereden (Linuxon általában a /var/lib/docker/volumes útvonalon), amit ő maga felügyel és kezel. Ez a legmegbízhatóbb és leggyorsabb megoldás, különösen Windows és macOS rendszereken, mivel nem kell a gazdagép fájlrendszerét emulálni.
Ezt azonban a saját igényeidre is szabhatod.
Helyi mappa csatolása (Bind Mount)
Lehetőséged van arra, hogy a géped egy konkrét mappáját (például egy mappát az aktuális könyvtárban) közvetlenül csatold be a konténerbe. Ilyenkor a letöltött fájlokat közvetlenül a saját fájlkezelődben is láthatod.
Ha Bind Mount-ot szeretnél használni, az alapértelmezett docker-compose.yaml fájlban két dolgot kell módosítanod:
- A szolgáltatás
volumesrészénél a- data:/app/datasort cseréld le a helyi elérési útra, például- ./data:/app/data-ra. - Töröld ki a fájl legvégén található, a named volume-ot definiáló teljes
volumes:blokkot!
Windows és macOS környezetben a bind mount nem ajánlott a /app/data mappára! Az eltérő fájlrendszerek emulációja miatt a torrent letöltések írási és olvasási sebessége drasztikusan lecsökkenhet, ami instabillá teheti a streamelést. Ezeken a platformokon maradj az alapértelmezett named volume megoldásnál!
Példa a bind mount használatára Linuxon:
services:
stremhu-source:
volumes:
- ./data:/app/dataKülön meghajtó a letöltéseknek
Ha azt szeretnéd, hogy a rendszerfájlok és az adatbázis az SSD-n maradjanak (a gyors működés érdekében), de maguk a nagy méretű letöltött filmek egy külső HDD-re vagy NAS megosztásra kerüljenek, akkor a tárolást kétfelé bonthatod:
services:
stremhu-source:
volumes:
# A rendszer működéséhez elengedhetetlen adatbázis és cache tárolása:
- data_system:/app/data/system
# A kettőspont előtti részbe írd be a nagy HDD-d elérési útját:
- /mnt/kulso_hdd/filmek:/app/data/downloadsTorrent kliens aktív mód (Port nyitás)
Ha a torrent klienst aktív módban szeretnéd használni a jobb letöltési sebesség és több kapcsolat érdekében, elérhetővé kell tenned egy portot a bejövő kapcsolatok számára. Alapértelmezés szerint ez a 6881-es port.
Ezt a portot a StremHU Source webes felületén (UI) a beállításoknál tudod módosítani.
Ha a webes felületen megváltoztatod a torrent kliens portját, azt a docker-compose.yaml fájl ports részében is kötelezően módosítanod kell az új értékre! Fontos, hogy mind a TCP, mind az UDP protokoll ki legyen engedve.
Router beállítás (Port Forwarding): Ahhoz, hogy az aktív mód ténylegesen működjön a külvilág felé, nem elegendő csak a Dockerben kinyitni a portot. Az otthoni routered beállításaiban is engedélyezned kell a porttovábbítást (Port Forward) erre a portra, a szervert futtató gép belső IP-címére mutatva!
Példa a default 6881-es port esetén:
ports:
- '7070:7070'
- '6881:6881'
- '6881:6881/udp'Konfigurálható környezeti változók
A docker-compose.yaml fájl environment szekciójában további változókat adhatsz meg a működés testreszabásához.
| Változó neve | Leírása | Alapérték |
|---|---|---|
PORT | Ezen a porton fog elindulni a szerver. | 7070 |
SESSION_SECRET | A bejelentkezési munkamenetek titkosítási kulcsa. | stremhu-source |
HOST_IP | A gép hálózati (LAN) vagy publikus IP-címe. Csak akkor kötelező, ha a REVERSE_PROXY_DOMAIN nincs beállítva. | (feltételesen) |
REVERSE_PROXY_DOMAIN | Beállíthatod a Reverse Proxy-hoz használt külső domain nevet. Bővebb információ a Hálózati elérés oldalon. | (nem kötelező) |
A ports: leképezés használatakor ügyelj rá, hogy a külső (published) és a belső (target) portoknak azonosnak kell lenniük a megfelelő működés érdekében (például 7070:7070)! Ha egyedi portot szeretnél használni, a PORT környezeti változót is módosítanod kell az új értékre.