Jlesage GUI-Apps - GUI-Anwendungen per noVNC im Browser nutzen

Jlesage GUI-Apps - GUI-Anwendungen per noVNC im Browser nutzen

Das jlesage/baseimage-gui-Image ist das Fundament für Docker-Container, die grafische Desktop-Anwendungen über einen integrierten noVNC-Webserver zugänglich machen.

Was ist jlesage/baseimage-gui?

jlesage hat eine Basis-Image-Familie entwickelt, die einen minimalen X11-Desktop mit eingebettetem noVNC-Server bereitstellt. Darauf aufbauend existieren fertige Images für Dutzende grafischer Anwendungen: HandBrake, MakeMKV, FileZilla, VNC-Viewer und viele weitere. Das Konzept ist immer gleich: Die Anwendung läuft im Container, die Oberfläche ist per Browser ohne jede zusätzliche Software erreichbar. Dieses Artikel beschreibt das Basis-Image und das Muster, um eigene GUI-Apps zu containerisieren.

Voraussetzungen

  • Docker 20.10+ / Docker Compose
  • Kein grafisches System auf dem Host nötig

Compose-Beispiel

services:
  baseimage-gui-app:
    image: jlesage/baseimage-gui:alpine-3.19-v4
    container_name: gui-app
    restart: unless-stopped
    ports:
      - "5800:5800"
      - "5900:5900"
    volumes:
      - ./config:/config
    environment:
      - TZ=Europe/Berlin
      - DISPLAY_WIDTH=1920
      - DISPLAY_HEIGHT=1080
      - VNC_PASSWORD=sicherespasswort
      - APP_NAME=MeineApp

Hinweise

  • Port 5800 ist der noVNC-HTTP-Port (Browser-Zugriff); Port 5900 ist der klassische VNC-Port für VNC-Clients.
  • Eigene GUI-Anwendungen können auf Basis dieses Images containerisiert werden — das Repository enthält ausführliche Anleitungen und Beispiel-Dockerfiles.
  • VNC_PASSWORD ist für den Produktionseinsatz zwingend — ohne Passwort ist der Desktop ohne Authentifizierung erreichbar.
  • Die vorgefertigten jlesage-Images (HandBrake, MakeMKV etc.) basieren auf diesem Basis-Image und benötigen keine separate Konfiguration des X11-Umfelds.