Jellyfin (Media Server)
What this is
Self-hosted media server for streaming movies and TV shows from my NAS to local and remote devices.
Why I set this up
I wanted a fully self-hosted alternative to streaming services, with media stored locally on my Synology NAS and streamed via Docker.
Where it runs
-
Host: micropc (192.168.86.100)
-
Storage: Synology NAS (mounted to
/mnt/sjb2/media)
Docker Compose
services:
jellyfin:
image: linuxserver/jellyfin:latest
container_name: jellyfin
network_mode: host
environment:
- PUID=1026
- PGID=100
- TZ=America/Santo_Domingo
group_add:
- "44"
shm_size: "2gb"
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
volumes:
- /opt/docker/jellyfin/config:/config
- /mnt/sjb2/media:/media
- /opt/docker/jellyfin/transcode:/transcode
restart: unless-stopped
labels:
- diun.enable=true
Key Configuration Notes
Network
-
Uses
network_mode: host -
Required for:
-
DLNA / device discovery
-
Simpler local network access
-
-
Access via:
http://192.168.86.100:8096
Storage
-
/mnt/sjb2/media→ mounted NAS share containing movies/TV -
Ensure NAS is mounted before container starts
Permissions
-
Runs with:
-
PUID=1026 -
PGID=100
-
-
Must match permissions on NAS files, otherwise media won’t show
Hardware Acceleration
-
Uses Intel iGPU via:
-
/dev/dri/renderD128
-
-
group_add: 44→ required for video access -
Enables smoother playback and transcoding
Transcoding
-
/transcodedirectory mapped to local storage -
shm_size: 2gbimproves performance during transcodes
Setup Steps
-
Mount Synology NAS to:
/mnt/sjb2/media -
Create required directories:
-
/opt/docker/jellyfin/config -
/opt/docker/jellyfin/transcode
-
-
Start container:
docker compose up -d -
Open web UI:
http://192.168.86.100:8096 -
Add media libraries inside Jellyfin UI
Problems / Fixes
Media not appearing
-
Cause: permission mismatch
-
Fix: ensure PUID/PGID matches NAS file ownership
Hardware acceleration not working
-
Check:
ls /dev/dri -
Ensure container has access to
renderD128
NAS not mounted at boot
-
Container starts before mount is available
-
Fix:
-
Ensure proper fstab mount
-
Or restart container after boot
-
Result
Stable and reliable media server running on micropc.
-
Streams locally without issues
-
Hardware transcoding working
-
Media served directly from NAS
Notes
-
Managed with Docker Compose
-
Monitored via Dozzle logs
-
Updates tracked via DIUN
No comments to display
No comments to display