Пробросил /tmp/.X11-unix с хоста в контейнер Docker. Для порядка сделал xhost + на хосте. Запускаю в контейнере:
# ls -la /tmp/.X11-unix/
total 4
drwxrwxrwt 3 user user 102 May 17 17:40 .
drwxrwxrwt 4 root root 4096 May 17 17:22 ..
srwxrwxrwx 1 root root 0 May 17 17:37 X0
# DISPLAY=unix:0 xclock
Error: Can't open display: unix:0
Что за WTF? И главное - как это отлаживать?
UPD:
# socat unix-connect:/tmp/.X11-unix/X0 stdout
2017/05/17 18:52:33 socat[5606] E connect(5, AF=1 "/tmp/.X11-unix/X0", 19): Connection refused