General Reference ยท Any Computer

Tunarr Update Guide

Universal beginner-friendly instructions for installing and updating Tunarr in Docker on Ubuntu with Intel Quick Sync GPU acceleration. Adapt the port and config path for each computer.

3โ€“8 minutes
Last verified: March 1, 2026

Quick Reference: Your Two Computers

SettingComputer 1 (Media PC 1)Computer 2 (Media PC 2)
HostnameMediaPC1MediaPC2
Tunarr Port51735174
Config Path/home/brent (same on both)
GPU Device/dev/dri โ†’ card1 + renderD128
Required Groups--group-add 44 --group-add 992 (video + render)
Backups Location/home/brent/backups/
Web URLhttp://localhost:5173http://localhost:5174
๐Ÿ“

Your Config & Database

All Tunarr data lives at /home/brent on the host. It is never erased when you update or recreate the container.

๐ŸŽฌ

Media from NAS

Tunarr gets media from your NAS. No local media folder is mounted โ€” this is correct for your setup.

โšก

Intel GPU (Quick Sync)

Uses /dev/dri with card1 & renderD128. Needs both group 44 (video) and 992 (render).

๐Ÿง How to open Terminal: Press Ctrl + Alt + T on your keyboard. To paste into Terminal, use Ctrl + Shift + V (not Ctrl+V). You won't see characters when typing passwords โ€” that's normal.

โš ๏ธ Before Your First Setup: Discover Your Group Numbers

If you're setting up a new computer, the group numbers might be different. Run these two commands first to find your system's actual values:

bash โ€” run on any new computer
# Check your GPU is present
ls -la /dev/dri

# Find the group numbers (use these in --group-add)
getent group video
getent group render

The number at the end of each line (e.g., video:x:44 โ†’ use 44) is what you put in the --group-add flags. On your current identical computers, these are 44 and 992.

๐Ÿ”„ Update / Install Steps

Follow these steps in order. Replace [YOUR_PORT] with your computer's port (5173 or 5174).

0
Backup Your Config
Always do this first
bash
# Copy backups to a safe second location
sudo cp -r /home/brent/backups ~/tunarr-backups-$(date +%Y-%m-%d-%H%M)

# Verify backup files and database exist
ls -la /home/brent/backups/
ls -lh /home/brent/db.db
1
Stop & Remove the Old Container
Only removes the container โ€” data stays safe
bash
docker stop tunarr
docker rm tunarr
๐Ÿ’ก"No such container" is normal โ€” means it was already gone.
2
Pull the Newest Image
Downloads the latest Tunarr version
bash
docker pull chrisbenincasa/tunarr:latest
3
Recreate the Container with GPU Support
Change the port number for each computer
๐Ÿ”ด Replace [YOUR_PORT] below with 5173 for Computer 1 or 5174 for Computer 2. This is the only line that changes between computers.
bash โ€” docker run command
docker run -d \
  --name tunarr \
  -v /home/brent:/config/tunarr \
  -p [YOUR_PORT]:8000 \
  -e TZ=America/Los_Angeles \
  --device /dev/dri:/dev/dri \
  --group-add 44 \
  --group-add 992 \
  --restart unless-stopped \
  chrisbenincasa/tunarr:latest

What Each Flag Does

FlagWhat It Does (Plain English)
--name tunarrNames the container "tunarr" so you can refer to it easily
-v /home/brent:/config/tunarrConnects your config folder to the container โ€” this is where your channels and database live
-p [PORT]:8000Makes Tunarr available at your chosen port (5173 or 5174)
-e TZ=America/Los_AngelesSets the timezone to Pacific
--device /dev/dri:/dev/driPasses your Intel GPU into the container for hardware transcoding
--group-add 44Gives permission to use the "video" group (for card1)
--group-add 992Gives permission to use the "render" group (for renderD128)
--restart unless-stoppedAutomatically restarts Tunarr if the computer reboots
4
Verify Startup & GPU
Wait 30 seconds, then run these checks
bash
# Is the container running?
docker ps | grep tunarr

# Can the container see the GPU?
docker exec -it tunarr ls -la /dev/dri

# Are your backups still safe?
ls -la /home/brent/backups/
โœ“ GPU output should look like this
crw-rw---- 1 root video 226,   1 ... card1
crw-rw---- 1 root  992  226, 128 ... renderD128
5
Test Everything Works
Verify in browser and TiviMate
  • โœ“Open browser โ†’ http://localhost:[YOUR_PORT]
  • โœ“Go to Settings โ†’ About โ€” confirm version
  • โœ“Play a channel in the web preview
  • โœ“In TiviMate: force refresh playlist, test a channel
bash โ€” confirm GPU is active
docker logs tunarr 2>&1 | grep -i "qsv\|vaapi\|hwaccel" | tail -5
โœ…Look for -hwaccel qsv and -qsv_device /dev/dri/renderD128 in the output.
6
Clean Up Old Images
Optional โ€” frees disk space
bash
docker image prune -f
โš™๏ธ FFmpeg / GPU Settings in Tunarr

Verify these in the Tunarr web UI after every update.

๐Ÿ”ง Troubleshooting

Container won't start
docker ps -a then docker logs tunarr
"No such file or directory" for /dev/dri
The --device /dev/dri:/dev/dri flag is missing. Recreate the container with Step 3.
"Unable to find group render" error
Use group numbers: --group-add 44 --group-add 992. Run getent group render on a new system to find the correct number.
Permission denied on db.db
sudo chown -R 1000:1000 /home/brent
500 error in TiviMate but web works
Clear TiviMate cache or re-add the playlist
GPU not being used
Tunarr UI โ†’ Settings โ†’ FFMPEG โ†’ Transcode Configs โ†’ Hardware Acceleration must be "Intel QuickSync"
Need to check GPU on a new computer
Run ls -la /dev/dri then getent group video and getent group render to discover device names and group numbers