Docker how to run GUI applications

Yes, even though Docker has no devices, we can still fool it well enough by passing through our X server info as a bind mount and setting our DISPLAY environment variable.

Step 1.) Add Permission

Grant permission to docker to use the xhost/xserver

xhost +local:docker

non-network local connections being added to access control list

If you didn't do the above you will get an error like this when trying to launch a GUI app from Docker:

Unable to init server: Could not connect: Connection refused
Error: cannot open display: :0



Step 2.) Bind Mount X server to your docker container

Here is an example of doing it to Debian 11:

The relevant portion is to add the bind mount "-v /tmp/.X11-unix/:/tmp/.X11-unix"

and set the display environment variable: "-e DISPLAY=$DISPLAY debian:11"

docker run -v /tmp/.X11-unix/:/tmp/.X11-unix -it -e DISPLAY=$DISPLAY debian:11


Tags:

docker, gui, applicationsyes, devices, server, info, bind, mount, display, variable, xhost, xserver, connections, didn, app, unable, init, container, debian, relevant, portion, quot, tmp, unix,

Latest Articles

  • How To Force Flash an AMD Instinct GPU To Another Model Using Debian Ubuntu Mint Linux
  • How To compile ollama from source to use unsupported AMD GPU with rocm in Ubuntu Debian
  • QEMU KVM Virtio GPU Windows Cannot Select 1080P
  • Linux Gnome Desktop Ubuntu Mint Debian Gets Slower After Weeks
  • Firefox How to Save Full Page As Screenshot/PDF
  • Nvidia Datacenter Driver Tesla Slow nvidia-smi response and high utilization with 0 usage
  • ffmpeg how to normalize / increase the volume of your audio
  • kdenlive audio blips pops cracks artifacts solution fix
  • haproxy / nginx certbot SSL issues
  • nginx how to see the real IP when behind a CDN
  • Docker how to find real container child process ID
  • Alibaba Aliyun how to reset password solution 'Setup does not meet the requirements, please resetting'
  • RTL88X Series 80Mhz hostapd mode for Linux Debian Kali
  • How To Deploy Your Own Mastodon Server in Docker
  • ffmpeg burning subtitles in non-English errors [Parsed_subtitles_0 @ 0x561d3a0b3b80] Glyph 0x6709 not found, selecting one more font for (Sans, 700, 0)
  • rsyslog in container config
  • Interesting Whisper AI CPU vs GPU Test
  • How to install pytorch with cuda capability for AI acceleration with Nvidia Tesla etc.. GPUs
  • How to Spider the web archive.org to recover your old website/webpage
  • Debian 10 /etc/apt/sources.list