社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

如何通过ssh连接到docker映像,而不使用“无效显示变量”-本地docker会话正常时matplotlib出错?

Andreas • 5 年前 • 1896 次点击  

我在我的ubuntu 18.04linux机器上运行/托管了一个完全工作的docker映像。但是,通过powershell通过ssh从我的win10膝上型计算机连接到物理计算机:

ssh username@machine

当我试图通过ssh远程执行代码时,matplotlib确实会出现以下错误:

Traceback (most recent call last):
  File "foo", line 284, in <module>
    cnnTrainTestApply.applyStructureDetectionNet(absPathToCsvFiles, absPathToCnnOutputFiles)
  File "/home/dev/foo.py", line 702, in bar
    plt.figure(figsize=(15, 15))
  File "/opt/conda/lib/python3.5/site-packages/matplotlib/pyplot.py", line 539, in figure
    **kwargs)
  File "/opt/conda/lib/python3.5/site-packages/matplotlib/backend_bases.py", line 171, in new_figure_manager
    return cls.new_figure_manager_given_figure(num, fig)
  File "/opt/conda/lib/python3.5/site-packages/matplotlib/backend_bases.py", line 177, in new_figure_manager_given_figure
    canvas = cls.FigureCanvas(figure)
  File "/opt/conda/lib/python3.5/site-packages/matplotlib/backends/backend_qt5agg.py", line 35, in __init__
    super(FigureCanvasQTAggBase, self).__init__(figure=figure)
  File "/opt/conda/lib/python3.5/site-packages/matplotlib/backends/backend_qt5.py", line 235, in __init__
    _create_qApp()
  File "/opt/conda/lib/python3.5/site-packages/matplotlib/backends/backend_qt5.py", line 122, in _create_qApp
    raise RuntimeError('Invalid DISPLAY variable')
RuntimeError: Invalid DISPLAY variable

不是这个,也不是 ssh -X username@machine 一定要在成功中屈服。在没有ssh的情况下直接在我的机器上工作不会产生任何问题。我想它是一个丢失的xserver正在运行,或者类似的东西。

ssh连接有什么问题吗?我怎样才能解决这个问题?

由于matplotlib需要运行qt5后端,我不能简单地避免将主机系统的x-server转发给docker。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/47134
 
1896 次点击  
文章 [ 1 ]  |  最新文章 5 年前