ログイン画面を介してdocker / podmanコンテナ内のVNCサーバーに接続する

ログイン画面を介してdocker / podmanコンテナ内のVNCサーバーに接続する

現在、Podmanコンテナ内でUbuntu 18.04インスタンスを起動して実行しようとしています。私たちの目標は、VNCを介してコンテナ内のLinuxシステムに接続できることで、TigerVNCをこの目的に使用できるように努めています。今、すべてがうまくいっています。コンテナの起動時に開始するシステムサービスとしてvncserverを設定し、VNCクライアントを介して接続できます。しかし、私たちは混乱しているように見える一種のログイン画面を見ることができませんでした。私たちはgdm3(systemdで制御)をインストールし、今gnomeを使用します(最終的にxfceに切り替える予定です)。 systemd vncserverサービスはrootとして実行され、技術的にすべてを把握した後にuserlandサービスに切り替えます。

私はLinuxの専門家ではないので、いくつかの質問をしたいと思います。

  1. 明らかな事実:なぜログイン画面がないのですか? VNCがLinuxログインプロセスをバイパスすることはどのように可能ですか?
  2. xstartupXWindowシステムにすぐに入らないようにどのように設定する必要がありますか?

次のようになります/root/.vnc/xstartup

#!/bin/sh

export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &

gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
gnome-terminal &

最高です。よろしくお願いします。アンディ

答え1

ログインマネージャ(gdm)に問題があるようです。 lightdmに切り替えていくつかの設定を行った後、あなたが望むことをうまく達成しました。 Lightdmには、起動時にVNCサーバーインスタンスを起動する機能があります。/etc/lightdm/lightdm.confたとえば、次のように指定できます。

[LightDM]
start-default-seat=false

[VNCServer]
enabled=true
command=Xvnc :1 -rfbauth /opt/vnc_passwd
port=5901
width=1024
height=768
depth=24

この設定により、VNC を介して Podman コンテナ内のネイティブ Linux に接続できます。

最高です、アンディ

関連情報