Используйте X передач для сервера SSH внутренний контейнер Докера

Я пытаюсь использовать X передач через SSH для запущения приложений GUI, установленных в основанном на Ubuntu контейнере Докера, но X передач не применяются, даже я установил xauth с X11Forwarding yes в/etc/ssh/sshd_config. ($DISPLAY не определяется.)
Я пытался использовать X передач для реальных компьютеров с той же конфигурацией, и она работала хорошо. ($DISPLAY определяется.)
X передает через SSH действительно возможному контейнеру Докера?

5
задан 19 April 2017 в 09:50

1 ответ

Если контейнер находится на вашем локальном компьютере, проще предоставить программам, находящимся внутри вашего контейнера, прямой доступ к вашему сокету X11. Для этого вам нужно только смонтировать /tmp/.X11-unix и ~/.Xauthority в свой контейнер и установить $DISPLAY.

Предполагая, что вы используете some_user с домашним каталогом /home/some_user/ для запуска your_program в контейнере some_image, используйте

docker run  -v /tmp/.X11-unix:/tmp/.X11-unix \
            -v ~/.Xauthority:/home/some_user/.Xauthority \
            --env DISPLAY=:0 --user some_user some_image your_program
1
ответ дан 23 November 2019 в 10:41

Другие вопросы по тегам:

Похожие вопросы: