• Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below
  • Forum
  • Website
  • GitHub
  • Status
  • Translation
  • Features
  • Team
  • Rules
  • Help
  • Feeds
User Links
  • Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below

    Useful Links Forum Website GitHub Status Translation Features Team Rules Help Feeds
    Jellyfin Forum Support General Questions error: failed to initialize display on rootless official Docker

     
    • 0 Vote(s) - 0 Average

    error: failed to initialize display on rootless official Docker

    doubledown
    Offline

    Junior Member

    Posts: 1
    Threads: 1
    Joined: 2026 Apr
    Reputation: 0
    Country:Hungary
    #1
    2026-04-08, 10:24 AM (This post was last modified: 2026-04-08, 10:26 AM by doubledown. Edited 2 times in total.)
    Hello All!

    I've been struggling to configure Jellyfin to run on rootless docker with transcoding. My main issue is that I get the following error when I'm doing the official Configure With Linux Virtualization installation guide's validation step:
    Code:
    $ docker exec -it jellyfin /usr/lib/jellyfin-ffmpeg/vainfo
    Trying display: drm
    error: failed to initialize display

    I'm running a fresh install of Debian, with rootless docker setup, using docker compose, docker having its own dedicated user called 'dockeruser'. I'm pasting every detail I can below.

    Code:
    $ cat /etc/os-release
    PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
    NAME="Debian GNU/Linux"
    VERSION_ID="13"
    VERSION="13 (trixie)"
    VERSION_CODENAME=trixie
    DEBIAN_VERSION_FULL=13.4
    ID=debian
    HOME_URL="https://www.debian.org/"
    SUPPORT_URL="https://www.debian.org/support"
    BUG_REPORT_URL="https://bugs.debian.org/"

    user/group in container:
    Code:
    $ docker exec -it jellyfin ls -l /dev/dri
    total 0
    crw-rw---- 1 nobody nogroup 226,  0 Apr  7 21:24 card0
    crw-rw---- 1 nobody nogroup 226, 128 Apr  7 21:24 renderD128

    Code:
    $ uname -a
    Linux asgard 6.12.74+deb13+1-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.74-2 (2026-03-08) x86_64 GNU/Linux

    user/group on host:
    Code:
    $ ls -l /dev/dri
    total 0
    drwxr-xr-x 2 root root        80 Apr  7 23:24 by-path
    crw-rw---- 1 root video  226,  0 Apr  7 23:24 card0
    crw-rw---- 1 root render 226, 128 Apr  7 23:24 renderD128

    My docker-compose.yml:
    Code:
    services:
      jellyfin:
        image: jellyfin/jellyfin:10.11.8
        container_name: jellyfin
        hostname: jellyfin
        group_add:
          - "992" # 'render' group for GPU acceleration
          - "44" # 'video' group for GPU acceleration
          - "996" # 'input' group for GPU acceleration
        networks:
          - media_net
          - infra_net
        ports:
          - 8096:8096  # http traffic
          - 8920:8920  # https traffic
          - 1900:1900  # service auto-discovery
          - 7359:7359  # service auto-discovery
        devices:
          - /dev/dri/card0:/dev/dri/card0
          - /dev/dri/renderD128:/dev/dri/renderD128
        volumes:
          - jellyfin-config:/config
          - /mnt/disk1/jellyfin-cache:/cache
          - /mnt/md0/media:/media:ro
        restart: 'unless-stopped'

    dockeruser on host (docker's own dedicated user):
    Code:
    $ id
    uid=1001(dockeruser) gid=1001(dockeruser) groups=1001(dockeruser),44(video),992(render)
    $ groups
    dockeruser video render

    /etc/group on host
    Code:
    render:x:992:dockeruser
    video:x:44:dockeruser
    dockeruser:x:1001:

    user/group on container:
    Code:
    $ docker exec -it jellyfin id
    uid=1001 gid=65534(nogroup) groups=65534(nogroup),44(video),992,996
    $ docker exec -it jellyfin groups
    nogroup video groups: cannot find name for group ID 992
    992 groups: cannot find name for group ID 996
    996

    on host
    Code:
    $ echo $DOCKER_HOST
    unix:///run/user/1001/docker.sock

    I have tried many things:
    • I've added group_add to compose file to pass in the group for render and video
    • I've tried to do 'user: 1001:1001' in compose file, no success
    • tried to do 'user: 1001:992' and 'user: 1001:44', no success
    • if I chmod 0666 card0 and renderD128, the vainfo works in the container but that's a bad practice

    I've read on other places that it seems like people can run it in a rootless fashion.

    I'm out of options at this point. What am I doing wrong?

    Edit: Forgot to mention that I have an Intel CPU with iGPU.
    Code:
    $ cat /proc/cpuinfo | grep "model name" | head -1
    model name : 12th Gen Intel(R) Core(TM) i5-12400
    « Next Oldest | Next Newest »

    Users browsing this thread: 2 Guest(s)


    • View a Printable Version
    • Subscribe to this thread
    Forum Jump:

    Home · Team · Help · Contact
    © Designed by D&D - Powered by MyBB
    L


    Jellyfin

    The Free Software Media System

    Linear Mode
    Threaded Mode