Nvidia HW Transcoding in a Docker

I know it’s not official support, but I’ve read a few success stories and was trying to get HW transcoding to work in a docker.

Host system is Ubuntu 16.04

I have the Nvidia drivers installed on the HOST. They are working - testing by have FFMPEG encode something.

Do the drivers also need to be installed in the docker? I’ve tried, they don’t want to :frowning:

The docker workers. Can stream media just fine. When I turn on HW transcoding I get these error messages when I start streaming something:

plex | libva info: VA-API version 1.0.0
plex | libva info: va_getDriverName() returns -1
plex | libva error: va_getDriverName() failed with unknown libva error,driver_name=(null)

Here is my docker-compose.yml file contents:

version: ‘2.3’
services:
plex:
container_name: plexhwtc
image: plexinc/pms-docker
network_mode: host
restart: always
privileged: true
ports:
- 32400:32400/tcp
- 3005:3005/tcp
- 8324:8324/tcp
- 32469:32469/tcp
- 1900:1900/udp
- 32410:32410/udp
- 32412:32412/udp
- 32413:32413/udp
- 32414:32414/udp
environment:
- TZ=“America/Louisville”
- ADVERTISE_IP=http://10.10.10.18:32400/
hostname: HWPLEX
volumes:
- /Movies:/Movies:ro
devices:
- /dev/dri:/dev/dri
cpus: ‘12’
mem_limit: 8192m
storage_opt:
size: ‘5000G’
entrypoint: /bin/sh -c “chmod o+rw /dev/dri/renderD128 && usermod -aG video plex && /init”