我有一个带有ArchLinux和Python的Vagrant盒子,它使用每个项目的虚拟环境(通过使用某个Python版本)。我希望配置VSC来运行/调试这些Python项目。我已经挂载了包含我的项目的目录(使用sshfs),所以我不必担心同步。
使用PyCharm,配置仅在其IDE中。如何使用SSH为VSC配置?使用Python需要哪些其他插件?
提前致谢。
PS1:PyCharm是一个很棒的工具,但需要很多资源,在RAM中接近1GB。
PS2:我读过this article,但对我来说不太清楚,一个例子更有用。
编辑:我在这里写了一个新的和改进的答案: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
此外,您还可以在alias
或function
文件中创建.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
文件中函数的语法略有不同)
后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步:享受编程。别客气。