Re: Запуск гуевых прило жений в контейнере (was: Debian 7 и intel hd graphics 500)

Dmitry Alexandrov <[email protected]>
Newsgroups gmane.linux.debian.user.russian
Message-ID <[email protected]>
Stanislav Vlasov <[email protected]> wrote:
> Честно говоря, не в курсе, можно ли в контейнерах штатным образом запускать гуёвый софт с отображением его окон на локальных иксах без всяких ssh -X в контейнер

Да, естественно, ибо с каких это пор Иксам стали требоваться всякие костыли типа ssh для отрисовки окон на другой машине?

> простым конфигурированием контейнера.

Скорее уж хоста.  А конкретно:

1. Включить ‘-listen tcp’ у Икс-сервера.  Как — см. в документации экранного диспетчера, который его собственно по-умолчанию и отключает.

2. разрешить к нужной инстанции доступ для нужного контейнера:

	$ xhost +inet:192.168.122.11
	$ xhost +inet6:fd34:fe56:7891:2f3a::11

Единственное, я как-то так и не понял, работает ли это с link-local адресами, которые fe80::/10.  Кто понял, подскажите.


Короче говоря, от того, что у вас за система контейнеризации, все это не зависит никак, внутри только ‘DISPLAY=_gateway:0’ (ну или что надо) экспортировать.

Другое дело, что толку-то?  Одних Иксов далеко не всякому гую достаточно.  Доступа к отрисовке на GPU Иксы же сами по себе не дают.


Если ее надо, то придется проламывать стенку контейнера.  На примере LXC (строчки из configʼа):

	lxc.mount.entry = /tmp/.X11-unix tmp/.X11-unix none bind,optional,create=dir,ro
	lxc.cgroup.devices.allow = c 226:* rwm
	lxc.mount.entry = /dev/dri dev/dri none bind,optional,create=dir
	lxc.cgroup.devices.allow = c 116:* rwm
	lxc.mount.entry = /dev/snd dev/snd none bind,optional,create=dir

Первая строчка заменяет сетевую прозрачность Иксов, четвертая-пятая — Пульсы, ну а вторая-третья — это про тот самый доступ к графике.  226 и 116 — это мажорные номера устройств, см. ‘$ ls -l /dev/dri/’ в колонке размера.

Авторизация на Икс-сервере будет по UIDʼу, так что если не совпадают, то надо явно разрешить, причем я не знаю, как это сделать не давая UIDʼу имя на хосте, чтобы мочь приказать:

	$ xhost +si:localuser:stanislav

Кто знает, подскажите.
signature.asc (application/pgp-signature, 511 B)
-----BEGIN PGP SIGNATURE-----

iQFFBAEBCgAvFiEE1yoTx9fONarixgNIydoJ3hnBsjAFAl7XUXIRHDMyMTk0MkBn
bWFpbC5jb20ACgkQydoJ3hnBsjAXEwgArVS5AT4wYezZxbxg3TUp1F1TqTg1WFag
K+kmN/htOnOcocQ+niRyLUAmZvuVv1xw6B0mT6nGlua+Lc2G7H/pDyJ025nkeLS1
YFKgzd069+v8C3+CbqVEhIATulp6Y4+SLyqV7TCtsAjvwvKWoHLvDUdzOV9hPtME
x3T+hhYv1FVFwnTd4t6B1cfl0I/qTpRUx7UJjLUIfICM9TByl0lOSvSiD3mBALK9
5bteEvd42XQt8TwsVcwREaJ8OpMHyvVqXEFh0pArdtxxg8ZUat3eowN8bgvuEFvi
eYkQ68uESql9s07JHWOjVcqaNGs+2gDqv5amnsjNg6A2jGhFIGcryw==
=qSpa
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.