我的设置如下: - 在 docker 中运行的 django 服务器,带有端口映射:8090:8090 - Eclipse with PyDev
我希望能够在 Pydev 上放置断点(单击一行,一步一步)
我发现了几篇文章,例如; http://www.pydev.org/manual_adv_remote_debugger.html
但它仍然无法正常工作。
1) 我应该将 manage.py 更新为“导入 pydev”吗?要添加哪些行,我是否必须在 docker 容器中复制 pydev 插件的 pysrc 才能进行模块导入?
2)是否需要端口转发?运行到 docker 中的 python 实例应该可以访问主机上的远程调试服务器吗?
3) 我找到了关于 pycharm 和使用 ssh 远程调试的文章?不能用 pydev 做类似的事情吗?
4)如何“链接”我的本地目录和docker“目录”?
[编辑]我找到了解决方案
将 eclipse/path_to\pydev\plugins\org.python.pydev\pysrc 目录复制到您的 docker 容器可以访问它的地方。
编辑 pysrc/pydevd_file_utils.py,并添加主机和 docker 容器之间的目录映射,如: PATHS_FROM_ECLIPSE_TO_PYTHON = [(r'C:/django',r'/.../lib/django'), (r'C:/ workspace/myapp',r'/var/www/myapp')] 如果您有多个包含 python 代码的路径,您可以设置多个元组
编辑 manage.py 并添加以下内容
sys.path.append('/my_path/to_pysrc_/under_docker/pysrc') import pydevd pydevd.settrace(host='172.17.42.1') #你主机的IP
在 Pydev 中,在首选项 > Pydev > 运行/调试 > 远程调试器端口:5678
在 Debug Perspective …
假设我正在看一个nxn网格,并且在每个轴上我都有标记,比如动物.但我也有兴趣研究这些动物的群体,小组等之间的关系.因此,例如,我可能有脊椎动物和无脊椎动物,在脊椎动物中我可能有哺乳动物和爬行动物等等.(如果重要的话,我对相关矩阵特别感兴趣,实际上是通过seaborn使用热图......)
我想在matplotlib中绘制它,但沿轴有层次标记.因此,使用上面的例子,我会有像狗,猫,马,蜥蜴,鳄鱼等标签,然后第一组通过马的狗将有一个哺乳动物的标签和第二组蜥蜴,鳄鱼等将有爬行动物,这两个一起会有更多的脊椎动物标签......
我该怎么做?