What linux capabilities are necessary for DRI (Direct Rendering Infrastructure)?

Posted on

Problem :

Background:

I’m looking to create a docker image that can run opengl.

To do that I followed the steps found here, which worked like a charm.

The issue is that the instructions recommend that one use docker’s privileged mode, which provides the docker container with all linux capabilities.

I’d like to replace privileged with the exact capabilities that I need to run DRI, and only those capabilities.

The problem is that I don’t know what those are, or any way to retrieve them.

Solution :

You’ll want to pass --device=/dev/dri:/dev/dri to docker instead of --privileged if you’re using an open source video driver.

For more details (and if you’re using a closed source driver) the x11docker folks keep a wiki on the subject:
https://github.com/mviereck/x11docker/wiki/Hardware-acceleration