🎬 Jellyfin Media Server

Napravi svoj lični media server sa automatskim preuzimanjem filmova i serija - potpuno besplatno!

🎯 Šta ćeš dobiti?

Ovaj vodič te vodi korak po korak kroz kompletnu postavku profesionalnog media servera sistema:

  • Jellyfin - Open-source Netflix alternativa za strimovanje tvojih filmova i serija
  • Radarr - Automatsko preuzimanje filmova
  • Sonarr - Automatsko praćenje i preuzimanje serija
  • qBittorrent - Torrent klijent za preuzimanje
  • Gluetun VPN - Privatnost i bezbednost sa ProtonVPN-om
  • Bazarr - Automatsko preuzimanje titlova na srpskom i drugim jezicima

Bonus: Sve je kontejnerizovano sa Docker-om, što znači lako ažuriranje i održavanje! 🚀

Šta ti treba za početak

Računar za server
Intel i3/i5 ili AMD Ryzen 3/5 (može biti i stariji laptop)
RAM memorija
Minimum 4GB (preporučeno 8GB+)
Disk prostor
240GB SSD za sistem/500GB+ za medije
USB Flash Drive
16GB ili više (za Debian instalaciju)
Internet konekcija
100+ Mbps za remote streaming
Windows računar
Za inicijalni setup i SSH pristup
Rufus
Za kreiranje bootabilnog USB-a (besplatan)
💡 Savet: Dobro je da kasnije pristupaš serveru sa tog Windows računara preko SSH kroz CMD ili PowerShell - mnogo lakše možeš kopirati komande direktno iz ovog vodiča!
⚠️ Napomena o SSH pristupu: Tokom Debian instalacije, obavezno instaliraj SSH server (bićeš pitаn tokom instalacije). Ako slučajno preskočiš ovaj korak, moraćeš kasnije ručno da ga instaliraš komandom: sudo apt install openssh-server
1

Priprema Hardvera i Download Debian-a

Download Debian 12 ISO

  1. Idi na: debian.org/download
  2. Preuzmi Debian 13 "trixie" netinst ISO (800MB)
  3. Izaberi arhitekturu: amd64 za većinu računara

Kreiranje Bootable USB

Windows - Rufus:

  1. Preuzmi Rufus
  2. Ubaci USB (8GB minimum)
  3. Podesi:
    • Device: Tvoj USB
    • Boot selection: Debian ISO
    • Partition scheme: GPT
    • Target system: UEFI
  4. Klikni START

Ako koristite Linux - dd komanda:

Terminal
sudo dd if=debian-12.x.x-amd64-netinst.iso of=/dev/sdX bs=4M status=progress && sync
Pažnja! Zameni /dev/sdX sa pravom oznakom USB-a (proveri sa lsblk). Greška može obrisati pogrešan disk!
2

Bootovanje i Instalacija Debian-a

Ulazak u BIOS/Boot Menu

Restartuj računar i odmah pritiskaj:

Proizvođač BIOS Pristup Boot Menu
Dell F2 F12
HP ESC ili F10 F9
Lenovo F1 ili F2 F12
ASUS DEL ili F2 F8
Ako se ništa ne dešava:
  • Isključi Secure Boot u BIOS-u
  • Isključi Fast Boot
  • Probaj drugi USB port

Debian Instalacija

  1. Izaberi "Install" (ne Graphical)
  2. Jezik: English
  3. Lokacija: Tvoja država
  4. Tastatura: Tvoj layout
  5. Hostname: jellyfin-server
  6. Domain: Ostavi prazno
  7. Root password: Jak password - zapiši ga!
  8. Novi korisnik: Napravi običan korisnik (npr. "admin")

Particionisanje Diska

PAŽNJA! Ovaj korak će obrisati SVE podatke sa diska!

Sistem Disk (SSD/NVMe)

  1. Izaberi: "Guided - use entire disk"
  2. Odaberi manji disk za sistem (obično sda ili nvme0n1)
  3. Izaberi: "All files in one partition"
  4. Potvrdi: "Finish partitioning and write changes"
  5. Potvrdi: "Yes"

Dodatni Disk za Medije (HDD) - NAKON Instalacije

Ako imaš dodatni HDD (1TB, 2TB+) za filmove i serije:

1. Pronađi disk:
Terminal
lsblk

Potraži svoj HDD - npr. sdb (2TB disk)

2. Particioniraj disk:
Terminal
fdisk /dev/sdb

Unesi sledeće komande redom:

  • n - nova particija
  • p - primarna particija
  • 1 - broj particije
  • Enter (default početak)
  • Enter (default kraj - koristi ceo disk)
  • w - snimi izmene
3. Formatiraj particiju:
Terminal
mkfs.ext4 /dev/sdb1
4. Kreiraj mount point:
Terminal
mkdir -p /mnt/media
5. Mount-uj disk:
Terminal
mount /dev/sdb1 /mnt/media
6. Automatsko mount-ovanje pri boot-u:

Pronađi UUID diska:

Terminal
blkid /dev/sdb1

Kopiraj UUID (npr. a1b2c3d4-e5f6-...)

Dodaj u fstab:

Terminal
nano /etc/fstab

Dodaj liniju na kraj fajla:

fstab entry
UUID=tvoj-uuid-ovde /mnt/media ext4 defaults 0 2

Sačuvaj: CTRL+O, Enter, CTRL+X

7. Testiraj fstab:
Terminal
mount -a

Ako nema grešaka, sve radi!

Napomena: Sada kada kreiras folder strukturu u sledećem koraku, koristićeš /mnt/media umesto /opt/jellyfin-stack/media za skladištenje filmova i serija na velikom HDD-u!

Package Manager Setup

  1. Scan another CD?No
  2. Mirror country: Tvoja država
  3. Mirror: deb.debian.org
  4. HTTP proxy: Ostavi prazno

Software Selection

Izaberi SAMO:

  • SSH server
  • standard system utilities
Zašto bez GUI? Server radi bez grafičkog interfejsa - sve ćemo podesiti preko SSH-a!

GRUB Boot Loader

  1. Install GRUB?Yes
  2. Device: Glavni disk (/dev/sda)
  3. Sačekaj završetak instalacije
  4. Izvadi USB i restartuj
Uspeh! Debian 12 je instaliran. Nakon restarta, videćeš login prompt.
3

Prva Konfiguracija i SSH Pristup

Logovanje i Root Pristup

  1. Uloguj se sa svojim korisničkim imenom
  2. Postani root: su -
  3. Unesi root password

Ažuriranje Sistema

Terminal
apt update && apt upgrade -y

Saznavanje IP Adrese

Terminal
ip addr show

Traži liniju: inet 192.168.1.XXX/24 - broj PRE "/" je tvoja IP adresa!

Povezivanje preko SSH

Sa drugog računara (Windows PowerShell, Linux/Mac Terminal):

SSH Connection
ssh [email protected]

(Zameni admin i 192.168.1.100 sa tvojim podacima)

Odlično! Sad možeš kontrolisati server remote-no. Nastavi preko SSH-a.
💡 Windows SSH - Kopiraj/Lepi Komande: Od sada možeš sve komande iz ovog vodiča direktno kopirati sa tvog Windows računara i jednostavno ih nalepiti u CMD ili PowerShell terminal povezan preko SSH-a. Ovo ti mnogo olakšava posao jer ne moraš ručno kucati dugačke komande!

Kako kopirati/lepiti u terminalu:
  • CMD: Desni klik u terminal → Paste (ili samo desni klik ako je omogućen QuickEdit Mode)
  • PowerShell: Desni klik u terminal → Paste, ili Ctrl+Shift+V
  • Windows Terminal: Ctrl+Shift+V ili desni klik → Paste
4

Instalacija Docker-a

Instalacija Potrebnih Paketa

Terminal
apt install -y ca-certificates curl gnupg lsb-release

Dodavanje Docker GPG Ključa

Terminal
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg

Dodavanje Docker Repozitorijuma

Terminal
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null

Instalacija Docker-a

Terminal
apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Provera Instalacije

Terminal
docker --version
docker compose version
Ako vidiš verzije (npr. Docker version 24.0.7), Docker je uspešno instaliran!
5

Kreiranje Folder Strukture

Kreiranje Direktorijuma

Terminal
mkdir -p /opt/jellyfin-stack/{jellyfin,radarr,sonarr,prowlarr,qbittorrent,gluetun,media/{movies,tv,downloads}}

Provera Strukture

Terminal
apt install tree -y
tree -L 2 /opt/jellyfin-stack
6

🔐 VPN Setup (Obavezno!)

VAŽNO! Bez VPN-a, tvoja IP adresa će biti vidljiva pri preuzimanju torrenta!

Zašto VPN?

  • 🔒 Sakriva tvoju IP adresu od torrent trackera
  • 🔐 Šifruje sav qBittorrent saobraćaj
  • 🛡️ Zaštita od ISP-a i upozorenja
  • 🌍 Anonimnost online

Preporučeni VPN Provajderi

Provajder Cena Brzina Link
ProtonVPN ~€10/mesec ⭐⭐⭐⭐⭐ protonvpn.com
Mullvad €5/mesec ⭐⭐⭐⭐⭐ mullvad.net
NordVPN ~€12/mesec ⭐⭐⭐⭐ nordvpn.com
Surfshark ~€11/mesec ⭐⭐⭐⭐ surfshark.com
Preporuka: ProtonVPN ima odličan balans cene, brzine i privatnosti. Mullvad je najjeftiniji i super brz!

Podešavanje za ProtonVPN (Najpopularniji izbor)

1. Kreiraj ProtonVPN nalog:

  • Idi na protonvpn.com
  • Registruj se (potreban Plus plan za P2P torrenting)

2. Preuzmi OpenVPN credentials:

  1. Uloguj se na ProtonVPN
  2. Idi na: Account → OpenVPN/IKEv2 username
  3. Klikni: "Create new OpenVPN credentials"
  4. Zapiši:
    • Username (obično nešto kao: abc123+pmp)
    • Password (random string)
Važno: Ovo NISU tvoji ProtonVPN login podaci! Ovo su specijalni OpenVPN credentials.

3. Zapamti credentials za sledeći korak

Ove podatke ćeš uneti u docker-compose.yml za Gluetun kontejner.

Alternativni Provajderi - Credentials Setup

📘 Mullvad VPN
  1. Idi na mullvad.net
  2. Klikni "Generate account number"
  3. Zapiši account number (16 cifara)
  4. Plati sa kartom, PayPal ili crypto

Credentials za Gluetun:

  • Username: Tvoj account number (16 cifara)
  • Password: m (samo slovo "m")
📗 NordVPN
  1. Registruj se na nordvpn.com
  2. Uloguj se na dashboard
  3. Idi na: Services → NordVPN → Manual Setup
  4. Kopiraj Service credentials (Username i Password)

Credentials za Gluetun:

  • Koristi service credentials, NE tvoj email/password!
📙 Surfshark
  1. Registruj se na surfshark.com
  2. Uloguj se na dashboard
  3. Idi na: Manual Setup → Credentials
  4. Kopiraj Username i Password
💡 Saveti za SERVER_COUNTRIES:
  • Za najbolju brzinu, izaberi zemlju blizu Srbije: Netherlands, Germany, Romania
  • Možeš koristiti više zemalja: SERVER_COUNTRIES=Netherlands,Germany
  • Proveri podržane provajdere i zemlje: Gluetun Wiki
Spreman si! Sada imaš VPN credentials - nastavi sa Docker Compose konfiguracijom!
7

Docker Compose Konfiguracija

Kreiranje docker-compose.yml

Terminal
nano /opt/jellyfin-stack/docker-compose.yml

Kopiraj sledeći sadržaj:

docker-compose.yml
version: '3.8'

services:
  # VPN kontejner za siguran torrent promet
  gluetun:
    image: qmcgaw/gluetun
    container_name: gluetun
    cap_add:
      - NET_ADMIN
    environment:
      - VPN_SERVICE_PROVIDER=protonvpn
      - OPENVPN_USER=your_proton_username
      - OPENVPN_PASSWORD=your_proton_password
      - SERVER_COUNTRIES=Netherlands
      - FREE_ONLY=off
    ports:
      - "8080:8080"
      - "6881:6881"
      - "6881:6881/udp"
    volumes:
      - ./gluetun:/gluetun
    restart: unless-stopped

  # qBittorrent - Torrent klijent
  qbittorrent:
    image: linuxserver/qbittorrent
    container_name: qbittorrent
    network_mode: "service:gluetun"
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Belgrade
      - WEBUI_PORT=8080
    volumes:
      - ./qbittorrent:/config
      - ./media/downloads:/downloads
    restart: unless-stopped
    depends_on:
      - gluetun

  # Prowlarr - Indekser manager
  prowlarr:
    image: linuxserver/prowlarr
    container_name: prowlarr
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Belgrade
    volumes:
      - ./prowlarr:/config
    ports:
      - "9696:9696"
    restart: unless-stopped

  # Radarr - Movies manager
  radarr:
    image: linuxserver/radarr
    container_name: radarr
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Belgrade
    volumes:
      - ./radarr:/config
      - ./media/movies:/movies
      - ./media/downloads:/downloads
    ports:
      - "7878:7878"
    restart: unless-stopped

  # Sonarr - TV Shows manager
  sonarr:
    image: linuxserver/sonarr
    container_name: sonarr
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Belgrade
    volumes:
      - ./sonarr:/config
      - ./media/tv:/tv
      - ./media/downloads:/downloads
    ports:
      - "8989:8989"
    restart: unless-stopped

  # Jellyfin - Media Server
  jellyfin:
    image: jellyfin/jellyfin
    container_name: jellyfin
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Belgrade
    volumes:
      - ./jellyfin:/config
      - ./media/movies:/data/movies
      - ./media/tv:/data/tvshows
    ports:
      - "8096:8096"
      - "8920:8920"
    devices:
      - /dev/dri:/dev/dri
    restart: unless-stopped

Sačuvaj fajl: CTRL+O, Enter, CTRL+X

VAŽNO! Izmeni VPN podatke u gluetun sekciji sa podacima iz prethodnog koraka!
  • Za ProtonVPN: VPN_SERVICE_PROVIDER=protonvpn
  • Za Mullvad: VPN_SERVICE_PROVIDER=mullvad
  • Za NordVPN: VPN_SERVICE_PROVIDER=nordvpn
  • Za Surfshark: VPN_SERVICE_PROVIDER=surfshark

Pokretanje Kontejnera

Terminal
cd /opt/jellyfin-stack
docker compose up -d

Ova komanda će preuzeti sve Docker image-e (5-10 minuta) i pokrenuti sve kontejnere.

Provera Statusa

Terminal
docker compose ps
Proveri Gluetun logove: Ako Gluetun ne radi, proveri logove:
docker logs gluetun
Trebalo bi da vidiš poruku: Connected to VPN
Svi kontejneri bi trebalo da imaju status "Up"!
8

Konfiguracija Aplikacija

Web Interfejsi

Sa bilo kog računara na mreži, pristupi:

Aplikacija URL Port
Jellyfin http://192.168.1.100:8096 8096
Radarr http://192.168.1.100:7878 7878
Sonarr http://192.168.1.100:8989 8989
Prowlarr http://192.168.1.100:9696 9696
qBittorrent http://192.168.1.100:8080 8080

(Zameni 192.168.1.100 sa IP adresom servera)

Prowlarr Setup

  1. Otvori Prowlarr: http://192.168.1.100:9696
  2. Idi na: Settings → General
  3. Kopiraj API Key
  4. Dodaj indexere: Indexers → Add Indexer
  5. Preporučeni: 1337x, YTS, EZTV, Torlock

Povezivanje Prowlarr → Radarr/Sonarr

U Prowlarr-u:

  1. Settings → Apps → Add Application
  2. Izaberi Radarr
  3. Unesi:
    • Prowlarr Server: http://localhost:9696
    • Radarr Server: http://radarr:7878
    • API Key: (iz Radarr-a - Settings → General → API Key)
  4. Test i Save
  5. Ponovi za Sonarr sa URL-om: http://sonarr:8989
💡 Gde pronaći API ključeve:
  • Radarr: Settings → General → Security → API Key
  • Sonarr: Settings → General → Security → API Key
  • Prowlarr: Settings → General → Security → API Key

qBittorrent Setup

  1. Otvori: http://192.168.1.100:8080
  2. Default login: admin / adminadmin
  3. Promeni password: Tools → Options → Web UI → Authentication
  4. Podesi foldere:
    • Downloads: /downloads
    • Incomplete: /downloads/incomplete

✅ Provera VPN-a (KRITIČNO!)

Ne preskači ovaj korak! Moraš proveriti da VPN zaista radi pre nego što pokreneš torrent!
  1. Otvori qBittorrent: http://192.168.1.100:8080
  2. U novom tabu otvori: ipleak.net
  3. Preuzmi test torrent:
    • U qBittorrent: Options → Advanced
    • Klikni: "Download test torrent"
  4. Vrati se na ipleak.net i skroluj dole do "Torrent Address detection"
  5. MORA da vidiš VPN IP adresu, NE tvoju pravu IP!
Sve OK! Ako vidiš drugu IP adresu (ne tvoju), VPN radi kako treba! ✅
⚠️ Ako vidiš svoju pravu IP adresu - VPN NE RADI! Ne preuzimaj ništa dok ne podesiš!

Proveri:

  • Da li si uneo ispravne VPN credentials u docker-compose.yml
  • Da li je Gluetun kontejner pokrenut: docker logs gluetun
  • Restartuj kontejnere: docker compose restart

Povezivanje Radarr/Sonarr → qBittorrent

U Radarr-u i Sonarr-u:

  1. Settings → Download Clients → Add
  2. Izaberi qBittorrent
  3. Podesi:
    • Host: gluetun
    • Port: 8080
    • Username: admin
    • Password: tvoj password
    • Category: radarr ili sonarr
  4. Test i Save

Media Folderi

Radarr: Settings → Media Management → Root Folders → Add: /movies

Sonarr: Settings → Media Management → Root Folders → Add: /tv

9

Konfiguracija Jellyfin-a

Prvi Pristup

  1. Otvori: http://192.168.1.100:8096
  2. Izaberi jezik: Serbian / Srpski
  3. Kreiraj admin korisnika

Dodavanje Biblioteka

Filmovi:

  • Content type: Movies
  • Display name: Filmovi
  • Folder: /data/movies

Serije:

  • Content type: Shows
  • Display name: Serije
  • Folder: /data/tvshows

Hardware Transcoding (Intel Quick Sync)

  1. Dashboard → Playback
  2. Hardware acceleration: Video Acceleration API (VAAPI)
  3. VA-API Device: /dev/dri/renderD128
  4. Označi sve opcije za hardware decoding
  5. Save
Hardware transcoding omogućava streaming više 1080p strimova bez opterećivanja CPU-a!
10

Testiranje Sistema

Dodavanje Prvog Filma

  1. Otvori Radarr: http://192.168.1.100:7878
  2. Klikni: Add New Movie
  3. Pretraži film (npr. "Inception")
  4. Podesi:
    • Root Folder: /movies
    • Quality Profile: Any
    • Monitor: Yes
  5. Klikni: Add Movie

Radarr će automatski:

  • Pretražiti Prowlarr indexere
  • Pronaći najbolji torrent
  • Poslati na qBittorrent
  • Nakon download-a, premestiti u /movies

Provera u Jellyfin-u

  1. Otvori Jellyfin: http://192.168.1.100:8096
  2. Dashboard → Libraries
  3. Klikni na "Filmovi"
  4. Scan Library
  5. Film će se pojaviti sa posterom!
🎉 Čestitamo! Tvoj Jellyfin server je spreman!
11

📦 Recyclarr - Automatsko Podešavanje Custom Formats

Šta je Recyclarr? Recyclarr (TRaSH Updater) automatski podešava Custom Formats u Radarr-u i Sonarr-u prema TRaSH Guides preporukama. To znači da ćeš automatski dobijati najbolje fajlove - blokiranje low quality, preferiranje dobrih release grupa, itd.

Korak 1: Dodaj Recyclarr u docker-compose.yml

Otvori tvoj docker-compose.yml fajl:

Terminal
nano /opt/jellyfin-stack/docker-compose.yml

Dodaj na kraj fajla (ispod ostalih servisa):

YAML
  # Recyclarr (TRaSH Updater) - Automatski updatuje Custom Formats
  recyclarr:
    image: ghcr.io/recyclarr/recyclarr:latest
    container_name: recyclarr
    user: 1000:1000
    volumes:
      - ./recyclarr:/config
    environment:
      - TZ=Europe/Belgrade
    restart: unless-stopped

Korak 2: Pokreni Recyclarr kontejner

Terminal
cd /opt/jellyfin-stack
mkdir -p recyclarr
docker compose up -d recyclarr
docker exec -it recyclarr recyclarr config create

Korak 3: Kreiraj recyclarr.yml config

Terminal
nano /opt/jellyfin-stack/recyclarr/recyclarr.yml

Kopiraj i zalepi sledeći config (zameni API ključeve):

recyclarr.yml
radarr:
  radarr-main:
    base_url: http://radarr:7878
    api_key: TVOJ_RADARR_API_KEY

    quality_definition:
      type: movie
      preferred_ratio: 0.5

    quality_profiles:
      - name: HD-1080p
        reset_unmatched_scores:
          enabled: true
        upgrade:
          allowed: true
          until_quality: Bluray-1080p
          until_score: 10000
        min_format_score: 0
        quality_sort: top
        qualities:
          - name: Bluray-1080p
          - name: WEB 1080p
            qualities:
              - WEBDL-1080p
              - WEBRip-1080p
          - name: Bluray-720p
          - name: WEB 720p
            qualities:
              - WEBDL-720p
              - WEBRip-720p

    custom_formats:
      - trash_ids:
          - ed38b889b31be83fda192888e2286d83
          - 90a6f9a284dff5103f6346090e6280c8
          - dc98083864ea246d05a42df0d05f81cc
          - b8cd450cbfa689c0259a01d9e29ba3d6
        assign_scores_to:
          - name: HD-1080p
            score: -10000

      - trash_ids:
          - 0f12c086e289cf966fa5948eac571f44
          - 570bc9ebecd92723d2d21500f4be314c
          - eca37840c13c6ef2dd0262b141a5482f
        assign_scores_to:
          - name: HD-1080p

      - trash_ids:
          - b6832f586342ef70d9c128d40c07b872
          - ae9b7c9ebde1f3bd336a8cbd1ec4c5e5
          - 7357cf5161efbf8c4d5d0c30b4815ee2
          - 5c44f52a8714fdd79bb4d98e2673be1f
          - f537cf427b64c38c8e36298f657e4828
        assign_scores_to:
          - name: HD-1080p
            score: -10000

sonarr:
  sonarr-main:
    base_url: http://sonarr:8989
    api_key: TVOJ_SONARR_API_KEY

    quality_definition:
      type: series

    quality_profiles:
      - name: HD-1080p
        reset_unmatched_scores:
          enabled: true
        upgrade:
          allowed: true
          until_quality: Bluray-1080p
          until_score: 10000
        min_format_score: 0
        quality_sort: top
        qualities:
          - name: Bluray-1080p
          - name: WEB 1080p
            qualities:
              - WEBDL-1080p
              - WEBRip-1080p
          - name: HDTV-1080p
          - name: Bluray-720p
          - name: WEB 720p
            qualities:
              - WEBDL-720p
              - WEBRip-720p

    custom_formats:
      - trash_ids:
          - 85c61753df5da1fb2aab6f2a47426b09
          - 9c11cd3f07101cdba90a2d81cf0e56b4
          - 47435ece6b99a0b477caf360e79ba0bb
          - fbcb31d8dabd2a319072b84fc0b7249c
        assign_scores_to:
          - name: HD-1080p
            score: -10000

      - trash_ids:
          - 32b367365729d530ca1c124a0b180c64
        assign_scores_to:
          - name: HD-1080p
            score: -10000
Zameni API ključeve!
  • Radarr API Key: Radarr → Settings → General → Security → API Key
  • Sonarr API Key: Sonarr → Settings → General → Security → API Key

Korak 4: Pokreni Sync

Terminal
docker exec -it recyclarr recyclarr sync

Recyclarr će automatski dodati 20+ Custom Formats u Radarr i Sonarr!

Korak 5: Proveri u Radarr-u

  1. Otvori Radarr → Settings → Custom Formats
  2. Trebalo bi da vidiš 20+ Custom Formats automatski dodanih!
  3. Proveri Settings → Profiles → HD-1080p - vidiš score-ove
🎉 Gotovo! Recyclarr je automatski podesio Radarr i Sonarr prema najbolim praksama!
  • ✅ Blokira Low Quality fajlove
  • ✅ Blokira BR-DISK, x265 (HD), 3D
  • ✅ Preferira Scene i P2P release grupe
  • ✅ Automatski updatuje Custom Formats
11B

💬 Bazarr - Automatski Titlovi

Šta je Bazarr? Bazarr automatski preuzima titlove za filmove i serije na srpskom, hrvatskom, engleskom i drugim jezicima. Integriše se sa Radarr-om i Sonarr-om i automatski traži titlove za nove fajlove.

Korak 1: Otvori Bazarr

Otvori: http://192.168.1.100:6767 (zameni sa IP adresom servera)

Korak 2: Podesi Jezike

  1. U Bazarr-u: Settings → Languages
  2. Languages Filter → Dodaj:
    • Serbian (srpski)
    • Croatian (hrvatski)
    • English (engleski - za backup)
  3. Languages Profiles → Klikni Add New Profile:
    • Name: Serbian/Croatian
    • Languages: Serbian, Croatian, English
  4. Save

Korak 3: Konektuj Radarr

  1. U Bazarr-u: Settings → Radarr
  2. Enable Radarr → Štikliraj
  3. Podesi:
    • Hostname or IP Address: radarr
    • Port: 7878
    • API Key: (iz Radarr-a: Settings → General → Security → API Key)
  4. Test → Trebalo bi: ✅ Success
  5. Save

Korak 4: Konektuj Sonarr

  1. U Bazarr-u: Settings → Sonarr
  2. Enable Sonarr → Štikliraj
  3. Podesi:
    • Hostname or IP Address: sonarr
    • Port: 8989
    • API Key: (iz Sonarr-a: Settings → General → Security → API Key)
  4. Test → ✅ Success
  5. Save

Korak 5: Dodaj Subtitle Providere

U Bazarr-u: Settings → Providers

OpenSubtitles.com (najbolji provider):

  1. Scroll do OpenSubtitles.com (NE OpenSubtitles.org)
  2. Enable → Štikliraj
  3. Username/Password: Registruj se na opensubtitles.com
  4. Save

Podnapisi.NET:

  1. Podnapisi → Enable
  2. Ne treba account
  3. Save

Subscene (opciono):

  1. Subscene → Enable
  2. Save

Korak 6: Podesi Subtitles Settings

  1. Settings → Subtitles
  2. Subtitle Folder: current (isti folder kao film)
  3. Upgrade Previously Downloaded Subtitles: Štikliraj (ako želiš bolje titlove)
  4. Minimum Score: 90 (minimum kvalitet titla)
  5. Save

Korak 7: Sinhronizuj Biblioteke

  1. System → Tasks
  2. Klikni ▶️ Run za:
    • Sync from Radarr
    • Sync from Sonarr

Bazarr će učitati sve filmove i serije iz Radarr-a/Sonarr-a.

Korak 8: Ručno Preuzmi Titl (opciono)

  1. Idi na Movies tab u Bazarr-u
  2. Nađi film
  3. Klikni 🔍 Search pored jezika (Serbian/Croatian)
  4. Izaberi najbolji titl i klikni Download

Automatsko Preuzimanje Titlova

Bazarr će automatski tražiti titlove za filmove/serije koji nemaju titlove. Možeš podesiti u Settings → Scheduler:

  • Search for Missing Subtitles: Every 6 hours ili Daily
🎉 Bazarr je konfigurisan! Sada će automatski preuzimati titlove za tvoje filmove i serije!
  • ✅ Automatski preuzima titlove na srpskom/hrvatskom
  • ✅ Integrisan sa Radarr-om i Sonarr-om
  • ✅ Podržava više subtitle providera
  • ✅ Titlovi se pojavljuju u Jellyfin-u automatski!
12

🎮 Hardware Transcoding - Intel Quick Sync

Preporučeno: Intel Quick Sync omogućava hardware transcoding bez potrebe za dodatnom grafičkom karticom! Ako imaš Intel procesor (i3, i5, i7, i9), vrlo verovatno već imaš Quick Sync.

Zašto Intel Quick Sync?

  • 10-15x brži transcoding nego samo CPU
  • 🎬 10-15+ simultanih 1080p streamova
  • ❄️ Minimalni CPU load - server ostaje hladan
  • 💰 Besplatno - ugrađeno u Intel procesor
  • 📺 4K → 1080p transcoding bez zastoja
  • Pouzdano - nema driver problema kao sa Nvidia

Podržani Intel procesori

Generacija Primeri Quick Sync Performanse
2-5 gen i5-2400, i5-4590 ✅ Osnovno 5-8 streamova
6-7 gen (Skylake/Kaby Lake) i5-6500, i7-7700 ✅ Odlično 10-15 streamova
8-13 gen i5-8400, i5-12400, i5-13600 ✅ Izvrsno 15-20+ streamova
Važno: Intel iGPU mora biti omogućen u BIOS-u! Čak i ako koristiš dedikovan GPU (npr. Nvidia), iGPU može da radi paralelno za Jellyfin transcoding.

Korak 1: Omogući iGPU u BIOS-u

  1. Restartuj server i uđi u BIOS (obično F2, DEL, ili F10)
  2. Pronađi opcije:
    • "Integrated Graphics" → Enabled
    • "IGFX Multi-Monitor" → Enabled
    • "Primary Display" → Auto ili IGFX
  3. Sačuvaj i restartuj

Korak 2: Proveri da li /dev/dri postoji

Nakon reboot-a, proveri:

Terminal
ls -la /dev/dri/

Trebao bi da vidiš:

Očekivani output
drwxr-xr-x  3 root root        100 Nov 19 10:00 .
drwxr-xr-x 19 root root       4200 Nov 19 10:00 ..
drwxr-xr-x  2 root root        100 Nov 19 10:00 by-path
crw-rw----  1 root video  226,   0 Nov 19 10:00 card0
crw-rw----  1 root render 226, 128 Nov 19 10:00 renderD128
Uspeh! renderD128 je tvoj Intel Quick Sync uređaj!

Korak 3: Dodaj korisnika u render grupu

Terminal
usermod -aG render 1000

Korak 4: Ažuriranje docker-compose.yml

Otvori docker-compose:

Terminal
nano ~/stacks/vpn/docker-compose.yml

Nađi jellyfin: sekciju i izmeni je ovako:

docker-compose.yml (Jellyfin sekcija)
  # Jellyfin - Media server sa Intel Quick Sync
  jellyfin:
    image: lscr.io/linuxserver/jellyfin:latest
    container_name: jellyfin
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Zagreb
    volumes:
      - ./jellyfin:/config
      - /mnt/media/movies:/data/movies
      - /mnt/media/tvshows:/data/tvshows
      - /mnt/media/music:/data/music
    ports:
      - "8096:8096"
    devices:
      - /dev/dri:/dev/dri  # Intel Quick Sync
    networks:
      - media_network
    restart: unless-stopped
Važno: Nemoj dodavati runtime: nvidia ili Nvidia environment varijable! One su samo za Nvidia GPU kartice.

Sačuvaj: CTRL+O, Enter, CTRL+X

Restart Jellyfin kontejnera:

Terminal
cd ~/stacks/vpn
docker-compose down jellyfin
docker-compose up -d jellyfin

Korak 5: Podešavanje u Jellyfin-u

  1. Otvori Jellyfin: http://tvoja-ip:8096
  2. Idi na: Dashboard → Playback
  3. Hardware acceleration: Izaberi Intel Quick Sync (QSV)
  4. Označi SVE opcije u sekciji "Enable hardware decoding for:":
    • ✅ H264
    • ✅ HEVC
    • ✅ VP9
    • ✅ AV1
  5. Klikni Save
Gotovo! Intel Quick Sync je sada aktivan!

Testiranje Hardware Transcodinga

Pokreni neki video u Jellyfin-u i namerno smanji kvalitet (npr. 720p ako je original 1080p) da forsiraj transcoding.

Proveri Jellyfin logove:

Terminal
docker logs jellyfin | grep -i "qsv\|vaapi"
Radi! Ako vidiš "qsv" ili "vaapi" u logovima, hardware transcoding je aktivan! 🚀

Performanse - Intel Quick Sync

Procesor 4K → 1080p 1080p → 720p Simultanih Streamova
i5-6500 (6. gen) 3-5 10-15 10-15 streamova
i5-8400 (8. gen) 5-8 15-20 15-20 streamova
i5-12400 (12. gen) 8-12 20-30 20-30 streamova

Troubleshooting

Problem: /dev/dri ne postoji

  • Proveri u BIOS-u da li je iGPU omogućen
  • Proveri: lspci | grep -i vga - trebao bi da vidiš Intel Graphics
  • Možda imaš samo Nvidia GPU - u tom slučaju Quick Sync neće raditi

Problem: Jellyfin ne vidi /dev/dri

  • Proveri da si dodao korisnika u render grupu: usermod -aG render 1000
  • Restartuj kontejner: docker-compose restart jellyfin
  • Proveri permissions: ls -la /dev/dri/ - render grupa treba da ima pristup

Problem: Transcoding i dalje koristi CPU

  • Proveri u Jellyfin → Dashboard → Playback da li je QSV izabran
  • Proveri da si označio sve opcije za hardware decoding
  • Pogledaj logove: docker logs jellyfin | tail -100
💡 Za i5-6500: Sa Intel Quick Sync možeš bez problema da serviruješ 3-5 korisnika istovremeno sa 1080p streamovima. Za većinu home servera, ovo je savršeno!
🎉 Hardware Transcoding je aktivan! Sada možeš da streamuješ bez opterećenja CPU-a! 🚀
💡

Troubleshooting

Problem: Kontejneri se ne pokreću

Check Logs
docker compose logs -f

Problem: qBittorrent ne može da se poveže

Check Gluetun
docker logs gluetun

Problem: Jellyfin ne vidi filmove

Fix Permissions
chmod -R 755 /opt/jellyfin-stack/media
chown -R 1000:1000 /opt/jellyfin-stack/media

Problem: Hardware transcoding ne radi

Add Render Group
usermod -aG render 1000
docker compose restart jellyfin

Problem: VPN ne radi - vidim svoju pravu IP adresu

  1. Proveri Gluetun logove: docker logs gluetun
  2. Proveri VPN credentials u docker-compose.yml
  3. Restartuj kontejnere: docker compose restart
  4. Ako koristiš ProtonVPN, proveri da li imaš Plus plan (Free ne podržava P2P)
⚙️

Dodatni Saveti

🔄 Ažuriranje Kontejnera

Update All
cd /opt/jellyfin-stack
docker compose pull
docker compose up -d

🛑 Zaustavljanje Servisa

Stop All
docker compose down

💾 Backup Konfiguracija

Create Backup
tar -czf jellyfin-backup-$(date +%Y%m%d).tar.gz /opt/jellyfin-stack

📱 Remote Pristup

Za pristup izvan kuće, pogledaj naš vodič: Cloudflare Tunnel Setup

🌟

Awesome Jellyfin - Dodatni Pluginovi i Teme

🎨 Učini Jellyfin još boljim! Awesome Jellyfin je kolekcija najboljih dodataka, pluginova, tema i alata za Jellyfin. Od custom tema do dodatnih funkcija - sve je na jednom mestu!

🔗 Awesome Jellyfin Projekat

Ovo je kurirana lista najboljih dodataka za Jellyfin maintainovana od strane zajednice:

GitHub Link
https://github.com/awesome-jellyfin/awesome-jellyfin

🎨 Šta možeš da nađeš?

1. Teme i Skinovi

  • JellySkin - Moderne i elegantne teme
  • Ultrachromic - Custom CSS za lepši izgled
  • Kaleidoscope - Dinamičke boje bazirane na posterima

2. Pluginovi

  • Intro Skipper - Automatski preskače intro sekvence
  • Anime Plugin - Bolja podrška za anime biblioteke
  • Fanart - Dodatni metadata i artworke
  • Trakt - Sync sa Trakt.tv za praćenje šta gledaš

3. Klijenti i Aplikacije

  • Mobilne aplikacije (Android/iOS)
  • Desktop klijenti (Windows/Mac/Linux)
  • Smart TV aplikacije
  • Browser ekstenzije

4. Alati za Automatizaciju

  • Jellyseerr - Web UI za request sistem (kao Overseerr)
  • Organizr - Unified dashboard za sve servise
  • Tautulli for Jellyfin - Monitoring i statistike

📦 Kako Instalirati Plugin?

Većina pluginova se može instalirati direktno iz Jellyfin-a:

  1. Otvori Jellyfin → Dashboard
  2. Idi na Plugins → Catalog
  3. Pronađi željeni plugin iz liste
  4. Klikni Install
  5. Restartuj Jellyfin server: docker compose restart jellyfin

🎨 Kako Instalirati Temu?

Za custom CSS teme:

  1. Otvori Jellyfin → Dashboard → General
  2. Skroluj do Custom CSS
  3. Kopiraj CSS kod iz Awesome Jellyfin repo-a
  4. Zalepi u Custom CSS polje
  5. Klikni Save i refresh browser
💡 Pro tip: Počni sa jednostavnim temama kao što je JellySkin, pa polako dodavaj pluginove. Nemoj da instaliraš sve odjednom - testiraj jedan po jedan da vidiš šta ti se dopada!

🔥 Top Preporuke

Ime Tip Opis
Intro Skipper Plugin Automatski preskače intro i outro
JellySkin Tema Najlepša moderna tema
Jellyseerr Tool Request sistem za filmove/serije
Finamp App Najbolji mobilni music player
⚠️ Napomena: Neki pluginovi su u razvoju ili mogu biti nestabilni. Uvek čitaj dokumentaciju i pravi backup pre instalacije novih pluginova!

🎉 Uspešno si postavio Jellyfin Media Server!

Sada imaš potpuno automatizovan sistem za preuzimanje i organizaciju filmova i serija. Uživaj u svom ličnom Netflix-u! 🍿

Sledeći koraci:

  • Dodaj još filmova i serija kroz Radarr/Sonarr
  • Podesi quality profile-e po ukusu
  • Instaliraj Jellyfin aplikaciju na telefonu/TV-u
  • Uživaj! 🚀