🛠 Serveur multimédia et Domotique avec Docker

Raspberry Pi 5 (model-5) · avance · Schéma : IMG-model-5-avance-3-model5-a3-docker-serveur-multimedia.svg — Raspberry Pi 5 sous Docker hébergeant Jellyfin (transcodage matériel VideoCore VII) et Home Assistant, diffusant vers TV et navigateurs

Objectives

Transform the Raspberry Pi 5 into a containerized media and home automation server: install Docker, deploy Jellyfin (the VideoCore VII GPU provides a 4Kp60 HEVC decoder and two 4Kp60 micro-HDMI outputs) and Home Assistant, with data persistence on NVMe for heavy workloads.

Hardware

Full code

# 1) Installer Docker (dépôt officiel)
curl -fsSL https://get.docker.com | sudo sh
sudo usermod -aG docker $USER && newgrp docker

# 2) Jellyfin avec accès au périphérique V4L2 (décodage/encodage matériel)
mkdir -p ~/jellyfin/config ~/jellyfin/media
sudo docker run -d --name jellyfin --restart unless-stopped \
  -p 8096:8096 \
  -v ~/jellyfin/config:/config \
  -v ~/jellyfin/media:/media \
  --device /dev/dri:/dev/dri \
  jellyfin/jellyfin

# 3) Home Assistant OS ou conteneur supervisor
sudo docker run -d --name homeassistant --restart unless-stopped \
  --privileged --network host \
  -v ~/ha/config:/config \
  ghcr.io/home-assistant/home-assistant:stable

# 4) Vérifier l'accès GPU côté conteneur
sudo docker exec -it jellyfin ls -l /dev/dri

Expected verification

docker ps lists both containers as Up. The Jellyfin interface at http://IP_DU_PI:8096 detects the /dev/dri/renderD* device and offers hardware transcoding; a 4K HEVC video plays on the web client without saturating the four cores. Home Assistant responds on port 8123.

Common errors

Other tutorials for this board

Code examples for this board

← Back to the board 🛠 All tutorials