Можно ли запустить контейнер docker с вложенной средой GUI на сервере без GUI и открыть сеанс GUI с удаленного клиента GUI? - PullRequest
0 голосов
/ 12 апреля 2020

У меня есть сервер GUI (fre sh Debian без какой-либо среды рабочего стола или сервера Ubuntu, без X-сервера, априори). Я рассматриваю установку docker, извлечение официального контейнера на основе Ubuntu и добавление к нему рабочего стола, чтобы использовать обычные GUI приложения.

У меня есть второй компьютер в локальной сети с обычным Debian Xfce или Xubuntu.

Можно ли использовать этот второй компьютер для открытия сеанса рабочего стола контейнера (который выполняется на сервере без GUI)? (я хотел бы использовать стандартный Debian или пакеты Ubuntu, насколько это возможно, и избегайте использования внешних пакетов PPA)

Небольшой уровень техники:

  • Я видел NoMachine решение: сборка и развертывание рабочих столов и приложений NoMachine в Docker для Linux https://www.nomachine.com/DT10O00161

    • Моя проблема заключается в том, что неясно, запущен ли docker на хосте без GUI или GUI. (И я бы предпочел использовать пакет из репозиториев Debian или Ubuntu)
  • Я также видел изображения Consol docker, такие как: consol / ubuntu-xfce-vnc https://hub.docker.com/r/consol/ubuntu-xfce-vnc/

    • Я не уверен, но они также работают в среде GUI.
  • Я также видел решение, использующее Xvfb и x11vn c (извините, это французская веб-страница, но я ожидаю, что перевод будет в порядке с обычными инструментами onl ie ): Utiliser VN C comme interface graphique ave c un conteneur docker https://www.geeketfier.fr/post/docker-display-on-windows/

    • Этот также, я не уверен, но это решение кажется также работать в среде GUI.

1 Ответ

1 голос
/ 12 апреля 2020

Я нашел это docker изображение, которое решает мой вопрос: docker -x2 go -xubuntu: https://hub.docker.com/r/paimpozhil/docker-x2go-xubuntu

Я построил его на GUI - меньше сервера и запустил его как объяснено на docker хабе.

На моем втором компьютере я открыл туннель s sh к серверу без GUI, указывающий на интерфейс docker:

ssh -CY -L 33333:container.docker.ip:2222 -l guilessuserlogin guiless.server.ip

(Я получил IP-адрес контейнера с помощью ifconfig на GUIless сервер)

На этом втором компьютере я установил x2goclient из обычных репозиториев и настроил сеанс для подключения к localhost: 33333

После подключения рабочий стол GUI компьютера docker полностью доступно.

...