通过SSH为远程Python解释器配置Visual Studio代码

问题描述 投票:5回答:2

我有一个带有ArchLinux和Python的Vagrant盒子,它使用每个项目的虚拟环境(通过使用某个Python版本)。我希望配置VSC来运行/调试这些Python项目。我已经挂载了包含我的项目的目录(使用sshfs),所以我不必担心同步。

使用PyCharm,配置仅在其IDE中。如何使用SSH为VSC配置?使用Python需要哪些其他插件?

提前致谢。

PS1:PyCharm是一个很棒的工具,但需要很多资源,在RAM中接近1GB。

PS2:我读过this article,但对我来说不太清楚,一个例子更有用。

python configuration visual-studio-code remote-debugging ssh-tunnel
2个回答
1
投票

编辑:我在这里写了一个新的和改进的答案:vscode python remote interpreter

使用VScode终端,您可以通过SSH在远程计算机上运行Python代码:

cat hello_world.py | ssh user@hostname python - 

您可以将此作为VSCode构建任务添加,${file}指向当前文件。如果您需要在VScode中进行远程调试,可以阅读以下步骤:code.visualstudio.com/docs/python/debugging#_remote-debugging

此外,您还可以在aliasfunction文件中创建.bashrc.zshrc,这样可以更方便地在远程计算机上执行文件(可能在virtualenv中)。例如,我的.zshrc文件包含以下函数,用于在远程virtualenv中在我的工作站上执行Python文件:

function remote-pytorch () {
    cat $1 | ssh user@hostname 'source ~/virtualenv/pytorch/bin/activate && python -'
}

这样,我就可以运行以下命令来远程执行脚本:

remote-pytorch train_network.py

(注意:.bashrc文件中函数的语法略有不同)


0
投票

Define remote interpreter on remote Linux machine using Pydev and RSE Server非常有用,现在似乎很明显。这是我使用自己的系统配置的解决方法:

第1步:安装远程主文件夹。

$ sshfs -o password_stdin,transform_symlinks vagrant@localhost:/home/vagrant ~/Vagrant/archi02/Remote/ -p 2222 <<< "your_vagrant_password"

第2步:使用VSC打开项目文件夹。

~/Vagrant/archi02/Remote/Projects/Python_3_7_2/QuickPythonBook/

步骤3:为远程Python和linter配置“settings.json”(来自WorkSpace设置)。

{
    "python.pythonPath": "~/Vagrant/archi02/Remote/Projects/Python_3_7_2/QuickPythonBook/ve_qpb/bin/python3.7",
    "python.linting.pylintEnabled": true,
    "python.linting.pylintPath": "pylint"
}

第4步:享受编程。别客气。

© www.soinside.com 2019 - 2024. All rights reserved.