Docker открыть URL в браузере хоста - PullRequest
0 голосов
/ 30 января 2019

Я установил xdg-utils в свой докер-контейнер с помощью apt-get install xdg-utils

Я хочу, чтобы команда xdg-open 'http://www.freedesktop.org/' открыла указанный URL-адрес в браузере хоста.

прямо сейчас выдает эту ошибку:

root@pravin:/# xdg-open 'http://www.freedesktop.org/'
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: www-browser: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: links2: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: elinks: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: links: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: lynx: not found
/usr/bin/xdg-open: 778: /usr/bin/xdg-open: w3m: not found
xdg-open: no method available for opening 'http://www.freedesktop.org/'

Как мне заставить докер использовать браузер хоста os?

Ответы [ 3 ]

0 голосов
/ 30 января 2019

Я думаю, что может быть трудно подключиться к процессу хоста и открыть новое окно.

Может быть какое-то решение, которое преодолеет эти трудности.Вы можете запустить процесс браузера внутри контейнера и поделиться отображением с хостом.

Основная идея состоит в том, чтобы разделить DISPLAY переменную среды и сеть между хостом и контейнером.Подробнее об этом вы можете прочитать в этой замечательной статье .

0 голосов
/ 25 июля 2019

Я думаю, что вы ищете ответ xdg-open-server

0 голосов
/ 30 января 2019

Вы не можете этого сделать, потому что контейнер по умолчанию не используется совместно с процессом / сетевым пространством имен / файловыми системами ОС.

Теоретически вы можете запустить контейнер в пространствах имен хост-процесса (--pid=host), сетевой хостПространство имен (--network=host) и смонтировать требуемую FS в контейнер (--volume ..), но все же могут возникнуть другие проблемы.Это потребует очень больших навыков работы с контейнером Docker.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...