本文记录VS Code远端服务器(WSL/SSH)的配置方法。
需要在VS Code内安装远程服务器WSL插件,然后通过类似SSH的某种形式连接上服务器,接着就可以正常编辑了。
由于我安装TVM和深度学习库都在virtualenv的虚拟环境pydev
内,所以还VS Code的项目中还需增添一个.vscode/settings.json
文件,内容指明python位置。保存重新加载VS Code,可见左下角的Python解释器已改为对应的虚拟环境内的版本。同时为维持Python环境内的跳转功能,需要将一些插件禁用,之后VS Code会自动下载Microsoft的Language server,进而实现文件间跳转。
{
"python.venvPath": "/mnt/d/pydev",
"python.pythonPath": "/mnt/d/pydev/bin/python",
"python.linting.enabled": false,
"python.jediEnabled": false
}
更多配置详情可见VS Code官网文档。
下面所指的客户端都是自己的电脑,服务器端则是远端环境。
在客户端生成SSH key
ssh-keygen -t rsa -b 2048
通常生成在C:\Users\your_name/.ssh/id_rsa
,将该文件的内容拷贝入服务器端的~/.ssh/authorized_keys
,进而可实现免密SSH通信。
在客户端的VS Code安装Remote - SSH的插件。
在客户端的VS Code按F1,选择Remote-SSH: Connect to Host
,输入user@hostname
,其中user
是你连接远端服务器所用的用户名,hostname
是服务器的IP地址。最好人工修改一下.ssh/config
文件
Host # 主机名,任意
HostName # IP地址
User # 用户名
Port # 端口号
IdentityFile # 公钥文件地址
连接上后,VS Code会自动配置服务器端环境,默认会在服务器端下载并安装。如果你需要在本机下载好后再传送过去,则需要设置remote.SSH.allowLocalServerDownload
(在文件->首选项->设置中),详情可参见该文。