在 Docker 容器内为 SSH 服务器使用 X 转发

Les*_*s25 5 ssh xorg docker

我通过SSH试图用X转发到运行GUI程序安装在基于Ubuntu的泊坞容器,但不应用X转发,即使我安装了xauthX11Forwarding yes在/ etc / SSH / sshd_config中。($DISPLAY未定义。)
我尝试将 X 转发用于具有相同配置的真实计算机,并且效果很好。($DISPLAY已定义。)
X 通过 SSH 转发到 Docker 容器真的可能吗?

Flo*_*sch 1

如果容器位于本地计算机上,则可以更轻松地让容器内的程序直接访问 X11 套接字。为此,您只需将/tmp/.X11-unix~/.Xauthority装入容器并设置$DISPLAY

假设您使用主some_user目录 在容器中/home/some_user/运行your_programsome_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
Run Code Online (Sandbox Code Playgroud)