Как открыть графический интерфейс приложения в многопроходном контейнере (guest = ubuntu, host = ubuntu)? X-Forwarding

Как открыть приложения с графическим интерфейсом в многопроходном контейнере (guest = ubuntu, host = ubuntu)?

Я установил многопроходный контейнер, который является своего рода док-контейнером для запуска логически отдельной системы. Multipass предоставляет возможность ssh (терминальный доступ), но я думаю, могу ли я также запускать приложения с графическим интерфейсом?

1
задан 17 June 2020 в 13:32

1 ответ

Мне потребовалось некоторое время, чтобы выяснить, как именно пересылать приложения с графическим интерфейсом с многопроходных компьютеров на хост, но оказалось, что все будет просто ...

Во-первых, нам нужно 'ssh' к нашей гостевой машине. Multipass предлагает команду 'shell', которая также является оболочкой для ssh. Поскольку нам необходимо включить переадресацию X, вместо этого мы будем использовать оригинальную команду ssh.

Поскольку ssh требует открытого ключа, нам сначала нужно получить эти ключи и сохранить их в нашем домашнем репозитории. Ключи ssh сохраняются в «/ var / snap / multipass / common / data / multipassd / ssh-keys». Оказалось, что MultiPass использует один и тот же ключ для всех инициированных контейнеров, поэтому нам просто нужно выполнить это один раз.

mkdir ~ / .ssh / multipassKey

sudo cp / var / snap / multipass / common / data / multipassd / ssh-keys / id_rsa ~ / .ssh / multipassKey / id_rsa

Добавьте ключ в ваш grp (замените пользователя своим именем пользователя)

sudo chown user -R.

Запустите контейнер с помощью ' название' (замените его на фактическое имя)

Стартовое имя мультипроцесса

Найдите ip работающего контейнера

multipass ls

Теперь вставьте ssh в машину с ip 1.1.1.1 (замените на ip, найденный выше)

ssh -X -i ~ / .ssh / multipassKey / id_rsa ubuntu@1.1.1.1

Теперь все приложения с графическим интерфейсом будут пересылаться по ssh на хост-компьютер

1
ответ дан 19 June 2020 в 21:24

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

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