Running GUI apps within Docker containers

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • distrobox

    Use any linux distribution inside your terminal. Enable both backward and forward compatibility with software and freedom to use whatever distribution you’re more comfortable with. Mirror available at: https://gitlab.com/89luca89/distrobox

  • Distrobox is handy for this: https://github.com/89luca89/distrobox

    It just lets you reuse any docker image on your desktop (both podman and docker), and has some nice features like the ability to create a launcher shortcut on the host and transparently mapping your home directory. I switched to it full time, all my CLI work is just done in a container, and it's pretty transparent.

  • dockerfiles

    Various Dockerfiles I use on the desktop and on servers.

  • Additional reading on this topic if you fancy it. This is the first one I read regarding docker for GUI apps

    https://blog.jessfraz.com/post/docker-containers-on-the-desk...

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • greenfield

    HTML5 Wayland compositor :seedling:

  • docker_scantailor

    Docker for ScanTailor and ScanTailor Advanced

  • Oh hey, I just automated this a bit to run the Linux version Scantailor Advanced on a Mac. I contributed it back upstream. It's not too complicated, but it took a while to get it working. https://github.com/ryanfb/docker_scantailor

  • docker-android

    Android in docker solution with noVNC supported and video recording

  • I know this isn't the focus of the article, but this license provision in a linked project is outright strange.

    >By using this software you agree that the following non-PII (non personally identifiable information) data will be collected, processed and used by the maintainers for the purpose of improving the docker-android project. Anonymisation with respect of the IP address means that only the first two octets of the IP address are collected.

    https://github.com/budtmo/docker-android/blob/master/LICENSE...

    How can you call a project Apache when you're forcing people to pay via their data ? Why is their no opt out option?

    Absent that this seems like a great QA automation tool. Or a Tinder bot farm...

  • flatpak

    Linux application sandboxing and distribution framework

  • Because Flatpak imposes some design choices that are... less than optimal for porting existing applications, and if you ask them to change maintainers will insist this is the way to go.

    They have told users that if they want, for instance, Jetbrains IDEs to work, they should simply get a Job at Jetbrains and convince them to rewrite their entire IDE to support the flatpak model.[1]

    This is the reason I avoid distros with Flathub enabled by default. Half the software on there is broken in some pretty subtantial way, and nobody at Flatpak or Flathub cares. They really need to realize they're not Apple, they simply can't tell everyone to do things their way and hope to build a working and reliable ecosystem.

    [1]: https://github.com/flathub/com.jetbrains.IntelliJ-IDEA-Commu...

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • Because Flatpak imposes some design choices that are... less than optimal for porting existing applications, and if you ask them to change maintainers will insist this is the way to go.

    They have told users that if they want, for instance, Jetbrains IDEs to work, they should simply get a Job at Jetbrains and convince them to rewrite their entire IDE to support the flatpak model.[1]

    This is the reason I avoid distros with Flathub enabled by default. Half the software on there is broken in some pretty subtantial way, and nobody at Flatpak or Flathub cares. They really need to realize they're not Apple, they simply can't tell everyone to do things their way and hope to build a working and reliable ecosystem.

    [1]: https://github.com/flathub/com.jetbrains.IntelliJ-IDEA-Commu...

  • docker-intellij

  • I'm doing this since quite a while and I am happy with this approach, especially with applications that tend to pollute my machine in every folder possible, like IntelliJ:

    https://github.com/madduci/docker-intellij

  • vscode-dev-containers

    Discontinued NOTE: Most of the contents of this repository have been migrated to the new devcontainers GitHub org (https://github.com/devcontainers). See https://github.com/devcontainers/template-starter and https://github.com/devcontainers/feature-starter for information on creating your own!

  • This is also supported directly in VSCode Dev Containers by using just a feature switch[1]

    [1] https://github.com/microsoft/vscode-dev-containers/blob/main...

  • capss

    Discontinued [Moved to: https://github.com/mody5bundle/capps]

  • docker-handbrake

    Docker container for HandBrake

  • It sounds like you missed the x11vnc part of this. You connect into the container using vnc, not x11. If you want to see a working example of a gui app running successfully in docker, check out https://github.com/jlesage/docker-handbrake

  • ubuntu-vnc-xfce-g3

    Headless Ubuntu/Xfce containers with VNC/noVNC (G3v5).

  • I use some projects that use vnc and also have setup novnc on them..

    Here’s an example of one, https://github.com/accetto/ubuntu-vnc-xfce-g3

    Novnc just allows accessing things via a browser too. I use it for quick checks but VNC when I want a client

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts