Installieren Sie den Browser im LXD-Container und führen Sie ihn auf dem Host-Betriebssystem aus

Installieren Sie den Browser im LXD-Container und führen Sie ihn auf dem Host-Betriebssystem aus

Ich versuche, den Brave-Browser in einem LXD-Container (vorzugsweise Voidlinux oder LinuxMint) zu installieren, eine Verknüpfung für diese App in meinem Host-Betriebssystem zu erstellen und sie wie jede andere Linux-App zu starten, mit der Ausnahme, dass sie in einem Container ausgeführt wird. Ich bin nicht sicher, wie ich den Anzeigeteil oder das LXC-Profil auf meinem Nicht-Ubuntu-Host-Betriebssystem konfiguriere.

Versucht diese Tutorials ohne Erfolg:

https://blog.simos.info/running-x11-software-in-lxd-containers/

zum Beispiel,

environment.PULSE_SERVER: unix:/home/ubuntu/pulse-native
connect: unix:/run/user/1000/pulse/native
listen: unix:/home/ubuntu/pulse-native

wodurch kann ich in einer Gentoo-Distribution „ ubuntuund“ ersetzen?user

lxc exec mycontainer -- sudo --user ubuntu --login 

das funktioniert im Voidlinux-Container nicht.

Antwort1

Ich habe nicht auf den Link geklickt, aber Sie müssen den Unix-Domänensocket des X-Servers in den Container bekommen, damit der Container die X11-App ausführen kann.

Also,

  1. Konfigurieren Sie die lxc-Konfiguration, um den Host-X11-Socket in den Container zu kopieren

  2. Wenn der Socket ein abstrakter Unix-Socket ist, konfigurieren Sie X so, dass eine Unix-Domänenversion verwendet wird

  3. Kopieren Sie den Socket in ein anderes Verzeichnis als /tmp. Das Verzeichnis /tmp wird nach den LXC-Kopiervorgängen gelöscht, sodass der Socket verschwindet.

  4. Verschieben Sie den Socket in das Verzeichnis /tmp, wo X11 ihn normalerweise ablegt

  5. export DISPLAY=:0 in der Benutzer-Shell

Ihnen sollte bewusst sein, dass dies lediglich eine Isolierung des Dateisystems und der Prozesse von den anderen Teilen des Hosts ermöglicht, X11 selbst jedoch keine Trennung zwischen Apps und der Desktop-Ansicht bietet.

verwandte Informationen