In case it's useful to anyone: I install the desktop via the Containers GUI, run 'setup xsession' within the GUI, attach the container within the GUI, open a new terminal window, because it's root I run su defaultuser or if your user is nano su nano to get out of root, I run /usr/bin/qxdisplay --wayland-socket-name "../../display/wayland-container-0" from that window, minimise that and the "waiting for xwayland' windows, in the terminal window with the attached container run /mnt/guest/start_desktop.sh 0, and then finally minimise it and change to the "waiting for xwayland" window which should have the desktop running. Obviously this has all been documented, but the big one for me was exiting root using su defaultuser before running the wayland code.