微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Docker 中使用 Xlib.display 包时出错

如何解决在 Docker 中使用 Xlib.display 包时出错

编辑 18/7/21

所以我已经将错误隔离在 xlib.display 中。在 docker 容器中,当我运行 echo $disPLAY 时它返回 069f0be6990c:10.0。 上面的代码所做的本质上是

import Xlib.display

Xlib.display.display('069f0be6990c:10.0')

这会抛出 X11 connection rejected because of wrong authentication. 错误

原件

我目前的连接是这样

windows local machine ------*SSH*------ remote GPU ------*SSH*------ docker container

启用 X-11 转发后,当我在 docker 中执行 xclockxeyes 等程序时,它在我的本地机器上显示没有问题。但是,当我尝试执行 AI2THOR 时。它返回以下错误

X11 connection rejected because of wrong authentication.
Traceback (most recent call last):
  File "test.py",line 4,in <module>
    controller = Controller()
  File "/usr/local/lib/python3.6/dist-packages/ai2thor/controller.py",line 465,in __init__
    self._build = self.find_build(local_build,commit_id,branch)
  File "/usr/local/lib/python3.6/dist-packages/ai2thor/controller.py",line 1130,in find_build
    if build.platform.is_valid(request):
  File "/usr/local/lib/python3.6/dist-packages/ai2thor/platform.py",line 32,in is_valid
    return len(cls.validate(request)) == 0
  File "/usr/local/lib/python3.6/dist-packages/ai2thor/platform.py",line 166,in validate
    request.x_display,request.width,request.height
  File "/usr/local/lib/python3.6/dist-packages/ai2thor/platform.py",line 90,in _validate_screen
    display_screen_str
  File "/usr/local/lib/python3.6/dist-packages/Xlib/display.py",line 89,in __init__
    self.display = _Basedisplay(display)
  File "/usr/local/lib/python3.6/dist-packages/Xlib/display.py",line 71,in __init__
    protocol_display.display.__init__(self,*args,**keys)
  File "/usr/local/lib/python3.6/dist-packages/Xlib/protocol/display.py",line 162,in __init__
    auth_prot_data = auth_data)
  File "/usr/local/lib/python3.6/dist-packages/Xlib/protocol/display.py",line 1075,in __init__
    display.send_and_recv(request = -1)
  File "/usr/local/lib/python3.6/dist-packages/Xlib/protocol/display.py",line 609,in send_and_recv
    raise self.socket_error
Xlib.error.ConnectionClosedError: display connection closed by server

当我执行这个程序时,Xlib 包中似乎有一些错误。非常感谢任何帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。