【问题标题】:Setting up Python remote debugging in VSCode在 VSCode 中设置 Python 远程调试
【发布时间】:2017-12-14 09:07:04
【问题描述】:

我将远程(ubuntu 16.04)驱动器安装在本地系统(ubuntu 16.04)上,以便我可以通过在 vscode 中打开源文件来编辑它们。

此外,在集成终端中,我可以 ssh 到远程系统并使用安装在虚拟环境中的远程 python 解释器运行程序,例如:

$ssh username@remoteip    
$workon remotevirtualenv
(remotevirtualenv)$python source.py

我想启用远程调试,这样如果我运行调试/运行远程文件,安装在我本地系统上的 vscode 使用我的远程 python 解释器。

我浏览了建议使用 ptvsd 扩展名的文档(它要求在本地拥有 2 个源文件副本,另一个在服务器上),但我不确定如何在这种情况下配置它。 感谢帮助。谢谢。

编辑 1: 正如,我说我已经阅读了文档,但我不清楚如何在这种情况下进行配置。例如文档说

  1. 两台计算机上的源代码中,添加以下行,将 my_secret 替换为适当的密码以进行身份​​验证 远程调试,并用适当的IP替换地址 地址(或本地主机)和端口号:
ptvsd.enable_attach("my_secret", address = ('0.0.0.0', 3000))

但我只有一份源文件副本,即在远程系统上。我刚刚将它安装在我的本地文件系统上。那么,我应该给出我的本地 IP 地址还是应该是远程系统 ip 以及我应该使用哪个端口号,因为我只有一个源副本,因此 ptvsd,它将如何通信。 另外,在配置中,localRoot 位置和remoteRoot 位置应该使用什么。

 3. {
     "name": "Attach (Remote Debug)",
     "type": "python",
     "request": "attach",
     "localRoot": "${workspaceFolder}",
     "remoteRoot": "${workspaceFolder}",
     "port": 3000,
     "secret": "my_secret",
     "host": "localhost" 
 }

编辑:感谢 VSCode 中的远程开发扩展,远程调试现在超级容易。

【问题讨论】:

    标签: python visual-studio-code vscode-settings


    【解决方案1】:

    你需要在ptvsd.enable_attach("my_secret", address = ('remote_ip_address', 3000))launch.json中输入远程IP地址:

    {
      "name": "Attach (Remote Debug)",
      "type": "python",
      "request": "attach",
      "localRoot": "${workspaceFolder}",
      "remoteRoot": "/home/user1/scripts/",
      "port": 3000,
      "secret": "my_secret",
      "host": "remote_ip_address" 
    }
    

    您还需要将remoteRoot的值更改为远程机器中脚本所在目录的路径(例如/home/user1/scripts/)。

    最后,打开一个 ssh 连接:ssh -L 3000:localhost:3000,在远程机器上运行你的脚本并在本地机器上附加调试器。

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 我已经浏览了官方文档,但我无法弄清楚,请查看我的编辑。
      • 请再次阅读文档;它最近更新并回答了您的问题。
      猜你喜欢
      • 2019-03-28
      • 2020-10-24
      • 2018-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-06
      • 1970-01-01
      • 2018-01-06
      相关资源
      最近更新 更多