GNOME + X2Go Docker image (experimental)
Purpose
Caveats / important notes
/etc/gdm3/custom.conf and using XDG_SESSION_TYPE=x11.xfce4 or mate are far more reliable inside containers and are recommended for production VMs/containers.Build
docker build -t brokenjade/mint_x2go:latest ./ubuntu_desktop_vnc/gnome_x2go
Run (recommended for testing)
This runs systemd inside the container. The flags below are commonly required; they loosen isolation and may not be suitable for all environments.
docker run --privileged -d \
--tmpfs /run --tmpfs /run/lock \
-v /sys/fs/cgroup:/sys/fs/cgroup:ro \
-p 2222:22 \
-e VNC_USER=myuser -e VNC_PASSWORD='yourpass' \
--name gnome-x2go gnome-x2go:latest
Notes after starting
systemd as PID 1. You can view logs with docker logs and docker exec -it <container> journalctl -f.sshd and x2goserver are running inside the container. If not:docker exec -it <container> bash
# inside container
systemctl enable --now ssh x2goserver
systemctl status ssh x2goserver
Connect with X2Go
x2goclient on your host.localhost:2222 using the SSH transport and the user you set (myuser / yourpass).Custom and set the command to gnome-session or select GNOME if available.Troubleshooting
gnome-session exits immediately:
journalctl -u gdm and journalctl -xe for errors related to logind, dbus, or the compositor (Mutter)./dev/dri) or permissions — consider adding --device /dev/dri and GPU-related mounts if you need hardware acceleration.Alternatives
Security
--privileged and exposing SSH increases attack surface. Lock down passwords, use SSH keys, or run behind a firewall.Content type
Image
Digest
sha256:589a6fa0f…
Size
1 GB
Last updated
9 months ago
docker pull brokenjade/mint_x2go