Skip to content

x11docker on MS Windows

mviereck edited this page Aug 18, 2019 · 37 revisions

x11docker on MS Windows

x11docker can run natively on MS Windows electively in one of:

x11docker on MS Windows provides basic functionality, but misses some features available on Linux. E. g. --webcam, --pulseaudio and --printer do not work. However, running in a Linux VM instead of running natively on Windows is fully supported.

Installation

  • To install x11docker in one of MSYS2, Cygwin or WSL follow the general installation instructions.
    • For the shortest way you might need to install curl first.
  • Provide an X server to allow graphical Linux applications.

X server

x11docker needs an X server on MS Windows.

  • In Cygwin it is enough to install packages xinit and xauth using the Cygwin installer. Example:
    x11docker x11docker/check
    
  • In WSL you need runx to provide X server VcXsrv or XWin. Example:
    runx -- x11docker x11docker/check
    
  • In MSYS2 you need runx to provide X server VcXsrv.
    • In MSYS2 only X server VcXsrv is supported by runx. XWin is not supported.
    • Usage in MSYS2 is discouraged because X server access can not be restricted with an authentication cookie.
    • Example:
    runx --no-auth -- x11docker x11docker/check
    

Troubleshooting

  • Docker might be configured not to allow sharing files from drive C: or other Windows partitions.
    • Change docker settings to allow access to drive C: (or another partition specified with --cachebasedir or --homebasedir).
      • x11docker creates cache files on drive C: that it shares with the container. You can specify another cache path with e.g. --cachebasedir=D:/x11docker/cache.
      • Same issue might occur with option --home. You can specify another home base folder with e.g. --homebasedir=D:/x11docker/home. image
  • To fix possible error message Error response from daemon: error while creating mount source path: mkdir /host_mnt/c: file exists. have a look at ticket #104.
  • Error messages like ./x11docker: line 2: $'\r': command not found indicate a wrong line ending conversion from git. Run dos2unix x11docker once to fix it.
  • Firewall settings in Windows can cause issues for container applications accessing the X server. If everything starts up without an obvious error, but no application window appears, have a look at ticket #108. Firewall
Clone this wiki locally