Starting Xserver in Docker Ubuntu container

Aleksei Petrenko picture Aleksei Petrenko · Sep 27, 2014 · Viewed 13.3k times · Source

I have minimal Ubuntu installation in my container and I want to have Xserver running. I need XServer, because my app requires meshlabserver, which itself needs Xserver.

I installed xserver-xorg and all other packages, but when I try to start X in container via

/usr/bin/X :0

it says:

Fatal server error:
(EE) xf86OpenConsole: Cannot open /dev/tty0 (No such file or directory)

What am I doing wrong? How do I start X server?

UPDATE:

related question: Host screen turns off when I start X server in docker container

Answer

Aleksei Petrenko picture Aleksei Petrenko · Sep 29, 2014

In my case it works nicely when I start container in privileged mode:

docker run --privileged

So XServer gets access to some devices from host (including /dev/tty0).

In general case it is a bad idea to run container in privileged mode, but in my case it's okay. To avoid using --privileged you can also try --device option of docker run command.