当前位置: 首页>前端>正文

使用vscode连接服务器的python环境 vscode连接服务器调试

文章目录

  • 0、前言
  • 1、远程和本机的环境配置
  • 1.1 远程主机安装ssh-server
  • 1.2 本地主机安装ssh-client
  • 2、安装vscode和插件remote development
  • 2.1 在本地安装完vscode
  • 2.2 安装remote development插件
  • 3、 VScode配置
  • 4、远程连接
  • 备注:服务器不能联网问题的解决
  • 5、免密码输入设置
  • 5.1 在本地pc生成ssh公钥和私钥
  • 5.2 手动上传公钥文件
  • 5.3 更改文件夹权限
  • 5.4 设置私钥
  • 6、备用问题解决
  • 6.1 首先检查vscode是否开启了ssh的开关
  • 6.2 报错出现ssh “permissions are too open” error
  • 6.3 用了远程服务器之后编写服务器上的代码出现各种Import “XXX“ could not be resolved
  • 6.4 Windows 下 VSCode 使用 SSH 连接报 Bad owner or permissions on C:\Users\Administrator/.ssh/config 错误问题解决
  • LAST、参考文献

0、前言

本文主要目的是实现使用vscode作为远程编写调试代码。在我们开发过程中,经常需要连接远程的服务器进行训练。通常情况下,我们会使用Pycharm的远程开发功能,同步服务器与本地的项目文件,使用远程解释器进行开发。但是使用过的同学都知道,重量级的Pycharm每次远程同步、加载远程解释器都需要相当长的时间。如果我们想要随时切换公司、学校、家里的各个场景,pycharm的同步、加载就成了一场噩梦。特别是当我们的python环境安装了很多依赖包,项目生成了大量文件的时候更是这样。直到vscode推出了Remote Development开发包,便完全解决了这个问题。让我可以在不同的场景快速切换,无需等待同步文件、环境。因为vscode远程开发完全是运行在服务器上的,我们本地的vscode只是一个前端界面,所以根本无需同步服务器上的文件、解释器依赖库就可以体验到与本地开发完全相同的体验。自从使用了vscode的Remote Development功能,我便完全抛弃了Pycharm。

1、远程和本机的环境配置

因为vscode的远程操作主要是依托于ssh服务
所以需要服务器可以支持ssh,一般都是linux自带的,但是可以测试一下,如果没有ssh的话可以通过如下进行一下安装

1.1 远程主机安装ssh-server

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_服务器,第1张

# Linux 系统
sudo apt-get install openssh-server

1.2 本地主机安装ssh-client

一般如果安装过xshell或putty等工具的就不需要单独安装了,可以在cmd中输入ssh查看本机是否安装了ssh。

# Linux 系统
sudo apt-get install ssh  或者 sudo apt-get install openssh-client

windows 系统中下载安装 OpenSSH。

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_vscode_02,第2张

2、安装vscode和插件remote development

2.1 在本地安装完vscode

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_远程连接_03,第3张

2.2 安装remote development插件

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_pycharm_04,第4张

点击相应插件的install即可

安装完毕后侧边栏会出现新的图标: 我这里已经安装完了大家应该可以有的

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_vscode_05,第5张

3、 VScode配置

安装完插件后左下角会出现一个绿色的图标

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_pycharm_06,第6张

点击选择会在命令窗口弹出几个选项。 选择 SSH | Remote-SSH:Open Configuration File…

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_pycharm_07,第7张

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_远程服务器_08,第8张

当然安装完成后,vscode左侧会多出一个菜单栏,我们点击配置按钮也可以到这一步

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_服务器_09,第9张

然后针对这几个文件, 选择当前用户目录下的ssh配置文件进行配置

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_远程连接_10,第10张

输入的服务器对应的ip和端口即可, USER处填写你的用户名

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_服务器_11,第11张

保存即可,侧边栏就会出现你的服务器信息 host后面是服务器的名字

4、远程连接

点击这个文件夹的标记就可以远程连接,在菜单栏命令中根据提示输入密码,就可以了

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_远程连接_12,第12张

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_vscode_13,第13张

左下角出现这个标记的时候就算是顺利链接了

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_远程服务器_14,第14张

备注:服务器不能联网问题的解决

因为在连接过程中,初始化链接中会在服务器更新下载一些服务文件,如果服务器不能联网,这些文件下载超时,我们就不能像普通ssh一样链接上服务器了,下面提供解决办法

从VSIX安装

您可以手动安装打包在.vsix文件中的VS代码扩展。在扩展视图命令下拉菜单中使用Install from VSIX …命令,或者在命令面板中使用VSIX …中的扩展:安装命令,指向该.vsix文件。

您还可以使用VS Code --install-extension命令行开关进行安装,从而提供.vsix文件的路径。

code --install-extension myextension.vsix

您可以--install-extension在命令行上多次提供一次安装多个扩展。

在按照上面的远程连接配置步骤后链接超时显示的安装失败的文件信息,用这个备注里的方式进行安装就可以完成离线安装使用了

https://marketplace.visualstudio.com/vscode

5、免密码输入设置

如果觉得每一次输入密码特别繁琐的话 可以设置免密码输入的秘钥链接,下面介绍一下操作步骤

5.1 在本地pc生成ssh公钥和私钥

在CMD输入

ssh-keygen -t rsa

这样会在当前目录生成名为id_rsa的私钥文件和名为id_rsa.pub的公钥文件,-t表示密钥类型是rsa。

如果你只输入ssh-keygen生成的RSA密钥长度为2048,如果你对安全性要求比较高可以指定4096位的长度:

ssh-keygen -b 4096 -t rsa

这里-b就是多少位,当你在生成SSHKEY的时候在命令行下会提示你Enter file in which to save the key,让你确认密钥文件保存的路径,一般回车即可(一般默认会在当前用户家目录下的.ssh目录下)。第二个提示是 Enter passphrase (empty for no passphrase) 让你输入一个密钥的密码,如果不输入则留空;回车生成公私钥完毕 。(这里建议密码留空)

5.2 手动上传公钥文件

将本地的公钥文件上传到服务器上,并添加到 authorized_keys 文件中。

scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub

%USERPROFILE% : C:\Users\xxx

%REMOTEHOST% :username@192.168.1.xxx

然后在服务器需要免密登录的用户家目录下查看是否有 ~/.ssh/authorized_keys 这个文件,如果没有手动创建一个:

touch ~/.ssh/authorized_keys

然后我们将公钥内容写入到authorized_keys文件中,因为这个文件可能已经有内容了,所以你可以使用如下方式,然后可以删除原来的文件

cat ~/tmp.pub >> ~/.ssh/authorized_keys
rm -f ~/tmp.pub

5.3 更改文件夹权限

将.ssh目录的权限为700

将authorized_keys目录的权限为600

chmod 700 ~/.ssh/
chmod 600 ~/.ssh/authorized_keys

5.4 设置私钥

打开刚才的配置文件,在你准备服务器位置下面,填好私钥的路径,这样就可以免密登录啦

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_pycharm_15,第15张

6、备用问题解决

如果发现连接不上的问题,参考如下几个链接

6.1 首先检查vscode是否开启了ssh的开关

通过这个方式打开配置文件

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_远程服务器_16,第16张

检查这几个配置

使用vscode连接服务器的python环境 vscode连接服务器调试,使用vscode连接服务器的python环境 vscode连接服务器调试_远程连接_17,第17张

Visual Studio Code User and Workspace SettingsVisual Studio Code Remote Development Troubleshooting Tips and Tricks

6.2 报错出现ssh “permissions are too open” error

【实践与问题解决34】VSCODE出现ssh “permissions are too open” error 链接远程服务器不好用的报错问题解决_呆呆象呆呆的博客

6.3 用了远程服务器之后编写服务器上的代码出现各种Import “XXX“ could not be resolved

【实践与问题解决33】vscode链接远程服务器,Import “XXX“ could not be resolved的问题解决_呆呆象呆呆的博客

6.4 Windows 下 VSCode 使用 SSH 连接报 Bad owner or permissions on C:\Users\Administrator/.ssh/config 错误问题解决

win10在远程连接配置中出现Bad owner or permissions on C:\\Users\\Administrator/.ssh/config

LAST、参考文献

VScode Remote 远程开发与调试

VSCode:Remote-SSH配置实录

VSCode远程开发:Remote Development -SSH配置实录

使用vscode进行远程炼丹


https://www.xamrdz.com/web/2pp1964302.html

相关文章: