在vs code上进行远程深度学习开发环境简易搭建

远程深度学习环境的搭建,可以采用pycharm,其是一个IDE,可以采用远程解释器连接到远程的服务器进行python代码的运行,debug和同步等,但是pycharm是一个商业软件,而且其体量较大,打开速度慢,因此更为轻量级的解决方案可以采用vs code(以下简称vsc)。

环境

  1. ubuntu 18.04
  2. vs code
  3. vs code插件sftp
  4. vs code插件remote-fs
  5. git

首先先下载vsc,百度便可找到,其中vs code的插件可以在界面中的extensions选项中找到,搜索需要的插件并安装重启vsc。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

其中安装sftp的目的是实现远程文件同步,可以在你修改本地代码的同时,自动地将代码同步到远程服务器上,而remote fs的作用是作为远程文件系统的,可以保管你的接入远程服务器的密钥和地址等。

配置

接下来需要配置sftp,在你的项目根文件夹下面新建一个文件夹,名为.vscode/,进入里面,新建一个文件,名为sftp.json,其中的内容如:

{
    "remote": "server_alias_name",
    "protocol": "sftp",
    "remotePath": "/home/user_name/AI_workspace/research/project_name/",
    "passive": false,
    "interactiveAuth": false,
    "uploadOnSave": true,
    "syncMode": "update",
    "ignore": [
        "**/.git",
        "**/dataset",
        "**/workdir",
        "**/datas/"
    ]
}

其中需要注意的基本上就这几项,其中remote是指定你的远程服务器的名字,这里我们结合remote fs的配置,而没有显式地指定ip,是为了在开源的时候,或者项目移交的时候的保密性和安全性考虑的。
protocol是文件传输协议
remotePath是你的项目同步的根目录,如果这个目录不存在,其将会自动新建。
uploadOnSave每当保存文件的时候,都会自动上传文件到服务器上
ignore指定不需要同步的文件或者文件夹,支持正则表达式

随后我们需要进行remote fs的配置,快捷键输入ctrl+shift+p,输入open user setting
在这里插入图片描述
找到扩展选项栏中的remote-fs configuration,在弹出的页面中选择在setting.json中编辑.
在这里插入图片描述
在这里插入图片描述

我们发现,我们进入了一个配置的json文件,在这个文本文件中输入:

"remotefs.remote": {
        "server_alias_name": {
            "scheme": "sftp",
            "host": "xxx.xxx.xxx.xxx",
            "port": xxxx,
            "username": "user",
            "privateKeyPath": "C:\\Users\\user\\.ssh\\id_rsa"
        },

        "server_alias_name_#2": {
            "scheme": "sftp",
            "host": "xxx.xxx.xxx.xxx",
            "port": xxxx,
            "username": "user",
            "privateKeyPath": "C:\\Users\\user\\.ssh\\id_rsa"
        },

  }

在这里我们要指定的是远程服务器的别名,如server_alias_name,和主机ip(host),在username中指定的是你的远程服务器的账户名,privateKeyPath中选择你的私钥的地址就可以自动安全的登陆了。如果恰好你有不只一台服务器,那么你可以设置多个这种别名,需要同步到不同服务器的时候,只需要在sftp.json中修改别名就行了。
为了让ssh的rsa登陆能够正常运行,通常在本地还需要用ssh-copy-id这个命令进行的,这个读者自行了解吧,也是非常简单的。大家可以参考[1]的进行无密登录的配置。

Reference

[1]. https://blog.csdn.net/liu_qingbo/article/details/78383892

发布了111 篇原创文章 · 获赞 206 · 访问量 28万+

猜你喜欢

转载自blog.csdn.net/LoseInVain/article/details/103872261
今日推荐