It looks to me that it is trying to send to the abstract Unix socket of X11.
I do not think I have published yet a tutorial on using the abstract socket. Which guide are you using?
You can try the following LXD profile. Here you do not need to manually install the client libraries for Nvidia; they are automatically provided by LXD by downloading the NVidia runtime. Also, we use a proxy device to share the X11 Unix socket of the host to the container.
$ lxc profile show guinvidia
config:
environment.DISPLAY: :0
nvidia.driver.capabilities: graphics, compute, display, utility, video
nvidia.runtime: "true"
raw.idmap: both 1000 1000
user.user-data: |
#cloud-config
runcmd:
- 'sed -i "s/; enable-shm = yes/enable-shm = no/g" /etc/pulse/client.conf'
- 'echo export PULSE_SERVER=unix:/tmp/.pulse-native | tee --append /home/ubuntu/.profile'
packages:
- x11-apps
- x11-utils
- mesa-utils
- pulseaudio
description: GUI LXD profile
devices:
PASocket:
path: /tmp/.pulse-native
source: /run/user/1000/pulse/native
type: disk
X0:
bind: container
connect: unix:/tmp/.X11-unix/X1
gid: "1000"
listen: unix:/tmp/.X11-unix/X0
mode: "0777"
security.gid: "1000"
security.uid: "1000"
type: proxy
uid: "1000"
mygpu:
type: gpu
name: guinvidia
used_by: