私はProxmoxで特権Debian LXCコンテナを実行し、その中でDockerを実行しています。 Sunshineを使用してDockerコンテナでXserverを実行してMoonlightクライアントにストリーミングしようとしています。これには「Whale Game」というプロジェクトを使用しています。 Sunshine は、起動およびクライアント接続中にいくつかの入力デバイスを動的に生成します。
以下はlxc confの関連行です:
features: nesting=1
lxc.mount.entry: /run/udev var/udev none bind,optional,create=dir
lxc.mount.entry: /dev/uinput dev/uinput none bind,optional,create=file
lxc.mount.entry: /dev/input dev/input none bind,optional,create=dir
lxc.cgroup2.devices.allow: c 10:* rwm
lxc.cgroup2.devices.allow: c 13:* rwm
コンテナにシンボリックリンクを作成し、それをDockerコンテナにマウントしました/var/udev
。/run/udev
Xorgはすべての入力デバイスを認識しますが、Sunshineによって作成されたデバイスは認識しません。evtest
デバイスが動作している様子を見ることができ、デバイスを使用すると入力も表示できます。問題は、udev
イベントがLXC境界を超えているため(私の考えでは?)、Xorgは新しいデバイスを追加しないことです。
私のProxmoxホストのudevadmモニター出力は次のとおりです。
❯ udevadm monitor -s input
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
KERNEL[124160.238916] remove /devices/virtual/input/input160/mouse7 (input)
UDEV [124160.258704] remove /devices/virtual/input/input160/mouse7 (input)
KERNEL[124160.264249] remove /devices/virtual/input/input160/event23 (input)
UDEV [124160.265212] remove /devices/virtual/input/input160/event23 (input)
KERNEL[124160.284184] remove /devices/virtual/input/input160 (input)
UDEV [124160.284846] remove /devices/virtual/input/input160 (input)
KERNEL[124160.340229] remove /devices/virtual/input/input161/event24 (input)
UDEV [124160.340751] remove /devices/virtual/input/input161/event24 (input)
KERNEL[124160.356212] remove /devices/virtual/input/input161 (input)
KERNEL[124160.356378] remove /devices/virtual/input/input159/mouse6 (input)
UDEV [124160.356729] remove /devices/virtual/input/input161 (input)
UDEV [124160.358682] remove /devices/virtual/input/input159/mouse6 (input)
KERNEL[124160.376267] remove /devices/virtual/input/input159/event22 (input)
UDEV [124160.376817] remove /devices/virtual/input/input159/event22 (input)
KERNEL[124160.400155] remove /devices/virtual/input/input159 (input)
UDEV [124160.400604] remove /devices/virtual/input/input159 (input)
KERNEL[124163.533210] add /devices/virtual/input/input162 (input)
KERNEL[124163.533254] add /devices/virtual/input/input162/mouse6 (input)
KERNEL[124163.533320] add /devices/virtual/input/input162/event22 (input)
KERNEL[124163.533592] add /devices/virtual/input/input163 (input)
KERNEL[124163.533623] add /devices/virtual/input/input163/mouse7 (input)
KERNEL[124163.533675] add /devices/virtual/input/input163/event23 (input)
KERNEL[124163.534019] add /devices/virtual/input/input164 (input)
KERNEL[124163.534048] add /devices/virtual/input/input164/event24 (input)
UDEV [124163.558279] add /devices/virtual/input/input162 (input)
UDEV [124163.559783] add /devices/virtual/input/input162/mouse6 (input)
UDEV [124163.560873] add /devices/virtual/input/input164 (input)
UDEV [124163.560960] add /devices/virtual/input/input163 (input)
UDEV [124163.562461] add /devices/virtual/input/input163/mouse7 (input)
UDEV [124163.628764] add /devices/virtual/input/input163/event23 (input)
UDEV [124163.636735] add /devices/virtual/input/input164/event24 (input)
UDEV [124163.636769] add /devices/virtual/input/input162/event22 (input)
これはLXCコンテナにあります。
❯ udevadm monitor -s input
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
KERNEL[124160.238840] remove /devices/virtual/input/input160/mouse7 (input)
KERNEL[124160.264292] remove /devices/virtual/input/input160/event23 (input)
KERNEL[124160.284242] remove /devices/virtual/input/input160 (input)
KERNEL[124160.340233] remove /devices/virtual/input/input161/event24 (input)
KERNEL[124160.356212] remove /devices/virtual/input/input161 (input)
KERNEL[124160.356397] remove /devices/virtual/input/input159/mouse6 (input)
KERNEL[124160.376315] remove /devices/virtual/input/input159/event22 (input)
KERNEL[124160.400172] remove /devices/virtual/input/input159 (input)
KERNEL[124163.533247] add /devices/virtual/input/input162 (input)
KERNEL[124163.533283] add /devices/virtual/input/input162/mouse6 (input)
KERNEL[124163.533371] add /devices/virtual/input/input162/event22 (input)
KERNEL[124163.533590] add /devices/virtual/input/input163 (input)
KERNEL[124163.533623] add /devices/virtual/input/input163/mouse7 (input)
KERNEL[124163.533682] add /devices/virtual/input/input163/event23 (input)
KERNEL[124163.534049] add /devices/virtual/input/input164 (input)
KERNEL[124163.534106] add /devices/virtual/input/input164/event24 (input)
udev
コンテナ内で動作させる方法はありますか? XorgでSunshineの動的入力デバイスを使用する別の方法を見つける必要がありますか?