您当前的位置:首页 > 电脑百科 > 程序开发 > 编程百科

vscode 远程开发

时间:2020-12-18 11:23:11  来源:  作者:

概述

vscode 支持远程开发,也就是源代码在远程服务器上,开发者在本地进行开发调试,远程服务器可以是 linux,而本地可以使用 windows 环境,图示如下

vscode 远程开发

 

请注意:本地是没有代码的

这样的方便性毋庸置疑

  • 不会因为开发和生产环境不一致导致各种奇怪的问题,比如依赖库找不到,路径问题等等
  • 使用多台电脑开发时,不需要在各个电脑之间保持代码的同步

更吸引人的是,搭建 vscode 的远程开发环境是非常简单的,就以下几个步骤

  • 配置远程环境的登录验证,本文以 SSH 密钥登录为例介绍,最多执行 4 条命令即可完成配置
  • vscode 安装远程登录扩展
  • 将 vscode 连接到远程环境
  • 为远程环境安装相应开发语言的扩展
  • 和本地一样进行开发调试

环境说明

  • 本地环境:windows 10
  • 远程环境:运行在 VirtualBox 里的 Linux 虚拟机
    • OS 版本:centos Linux release 8.2.2004 (Core)
    • 用户账号:root

为了方便,编辑本地的 hosts 文件,为远程服务器设置域名为 virtualbox

127.0.0.1 virtualbox

SSH 密钥验证

从 windows 远程登录到 Linux,一般都是采用 SSH,客户端可以选用 putty,XShell 等工具。vscode 也支持 SSH 登录到远程服务器上,需先配置 SSH 密钥登录

注意:如果你的 windows 未安装兼容 OpenSSH 的客户端(putty 不兼容 OpenSSH),请先 安装 OpenSSH(https://docs.microsoft.com/zh-cn/windows-server/administration/openssh/openssh_install_firstuse)

打开 windows 10 的 powershell(请勿使用 cmd,必须使用 powershell),执行如下命令,创建密钥

ssh-keygen -t rsa -b 4096

注意:如果你以前用 ssh-keygen 创建过密钥,那么这一步可以跳过。

如果不确定是否曾经创建过密钥,可以输入以下指令查看

 ls $HOME/.ssh

如果目录不存在则可以放心创建密钥,如果列出了如下文件,则说明密钥已经存在

id_rsa
id_rsa.pub

密钥创建后,执行以下命令即可完成 SSH 密钥登录的配置

# 帐号@ip(或域名)
$USER_AT_HOST="root@virtualbox"
# 指定公钥位置
$PUBKEYPATH="$HOME.sshid_rsa.pub"

$pubKey=(Get-Content "$PUBKEYPATH" | Out-String); ssh "$USER_AT_HOST" "mkdir -p ~/.ssh && chmod 700 ~/.ssh && echo '${pubKey}' >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

执行到第三条命令,会出现交互提示

The authenticity of host 'virtualbox (127.0.0.1)' can't be established.
ECDSA key fingerprint is SHA256:R7+lcN8z/RBrH0i3OMUvfZtEt4lxdbGQrEV/ydcq8Vc.
Are you sure you want to continue connecting (yes/no)?

输入 yes 继续,接下来会要求输入登录密码

Warning: Permanently added 'virtualbox' (ECDSA) to the list of known hosts.
root@virtualbox's password:

输入 root 用户 在 virtualbox 服务器上的密码完成设置

此时使用密钥登录已完成配置,输入如下命令即可连接到远程服务器

ssh root@virtualbox

可以看到命令提示符已经是远程服务器的啦

Last login: Wed Dec 16 01:51:17 2020 from 10.0.2.2
[root@localhost ~]#

vscode 安装远程扩展

在 vscode 里搜索 remote-ssh,点击安装即可

vscode 远程开发

 

使用 vscode 连接到远程服务器

remote-ssh 扩展安装完成后,可以看到 vscode 左边栏增加了 Remote Explorer 按钮,

vscode 远程开发

 

状态栏增加了 Open a Remote Window 按钮

vscode 远程开发

 

点击 Open a Remote Window 按钮,会打开命令面板,并显示常用的 remote-ssh 命令,如图

vscode 远程开发

 

选择 Remote-SSH: Connect to Host... 并输入 root@virtualbox 来连接到远程服务器

vscode 远程开发

 

此时 vscode 会打开一个新窗口,连接远程服务器,并且界面上方的命令面板会有远程服务器的平台选项,分别是

  • Linux
  • Windows
  • macOS

选择 Linux 即可,如果不选择的话,vscode 在等待一段时间后会提示连接失败,如下图

vscode 远程开发

 

如果看到这个连接失败的界面,也不要慌,Retry 并在命令面板选择 Linux 即可;连接成功后,可以看到状态栏图标上显示的主机名

vscode 远程开发

 

编写程序

我们用 Python 写个 hello world 吧

  • 点击 File 菜单,选择 Open Folder...,打开 /data/python 目录,如果目录不存在请先创建
  • 新建一个 test.py 的文件
  • 输入代码

如图

vscode 远程开发

 

这时会发现找不到运行的按钮,这是因为服务器上没有安装 python 扩展,我们打开扩展视图

vscode 远程开发

 

可以看到远程服务器上没有安装任何扩展,点击 Install in SSH: virtualbox 安装 python 扩展到服务器上,安装完成后,右下角会弹出对话框,要求选择 python 解释器

vscode 远程开发

 

指定 python 安装路径后,还会弹出一些安装 python 扩展的对话框,全部完成后,就可以运行 hello world 了

vscode 远程开发

 

断开远程连接

如果要断开远程服务器,可以从 File 菜单选择 Close Remote Connection,否则的话下次打开 vscode 会自动连接到远程服务器

vscode 远程开发

 

保存远程服务器信息

也许有的同学需要在多个不同的远程服务器上进行开发,可以通过远程浏览器来管理这些服务器

点击左边栏的 Remote Explorer 按钮,打开远程浏览器,点击 SSH TARGETS 视图右侧的加号,添加服务器

vscode 远程开发

 

在弹出的对话框里输入 root@virtualbox,并在随后的对话框里指定配置文件,即可完成远程服务器的保存,此时 SSH TARGETS 视图会出现该服务器

vscode 远程开发

 

可以很方便的通过该视图连接到远程服务器



Tags:vscode   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
1. vscode 简介vscode是微软开发的的一款代码编辑器,就如官网上说的一样,vscode重新定义(redefined)了代码编辑器。当前市面上常用的轻型代码编辑器主要是:sublime,notepad++,editp...【详细内容】
2021-04-27  Tags: vscode  点击:(279)  评论:(0)  加入收藏
在程序员圈子里,Visual Studio Code(以下简称VSCode)可以说是目前最火的代码编辑器之一了。...【详细内容】
2021-03-10  Tags: vscode  点击:(290)  评论:(0)  加入收藏
0.引言本篇文章主要讲解vscode安装和测试,主要是利用vscode可以模拟本地服务器,可以直接写一些简单的前端demo,便于演示。 1.vscode安装vscode官网连接地址:https://code.visual...【详细内容】
2020-12-28  Tags: vscode  点击:(213)  评论:(0)  加入收藏
概述vscode 支持远程开发,也就是源代码在远程服务器上,开发者在本地进行开发调试,远程服务器可以是 Linux,而本地可以使用 windows 环境,图示如下 请注意:本地是没有代码的这样的...【详细内容】
2020-12-18  Tags: vscode  点击:(202)  评论:(0)  加入收藏
VSCode(Visual Studio Code)是由微软研发的一款免费、开源的跨平台文本(代码)编辑器,算是目前前端开发几乎完美的软件开发工具。1.VSCode下载VSCode下载链接: https://code.visua...【详细内容】
2020-11-10  Tags: vscode  点击:(114)  评论:(0)  加入收藏
大家好我是lemon, 马上进入我们今天的主题吧。又见VsCodeVisual Studio Code(简称VS Code)是一个由微软开发,同时支持Windows 、Linux 和 macOS 等操作系统的免费代码编辑器,在2...【详细内容】
2020-10-09  Tags: vscode  点击:(70)  评论:(0)  加入收藏
序言做前端开发的朋友经常需要使用Visual Studio Code编辑代码,很多朋友就想在VSCode调试JS代码,下面我们就介绍下如何配置操作。一、环境准备首先安装好VSCode,准备好一个JS项...【详细内容】
2020-09-11  Tags: vscode  点击:(104)  评论:(0)  加入收藏
RTOS 之类的实时嵌入式操作系统使嵌入式系统的编程更简单• 来源:linux.cn • 作者:Seth Kenlon • 译者:SilentDawn •(本文字数:3405,阅读时长大约:5 分钟)物联...【详细内容】
2020-07-29  Tags: vscode  点击:(82)  评论:(0)  加入收藏
环境:远程系统 : deepIn 15.11本地系统:windows 7nodejs : 12.13.01.程序部署将nodejs程序同时放到远程系统和本地系统$ tree.├── index.js└── node_modules └── ex...【详细内容】
2020-06-26  Tags: vscode  点击:(96)  评论:(0)  加入收藏
# vscode如何优雅的拥抱eslint[vue-admin-beautiful](https://github.com/chuzhixin/vue-admin-beautiful)开源了不到两个月收获了![social](https://img.shields.io...【详细内容】
2020-05-13  Tags: vscode  点击:(55)  评论:(0)  加入收藏
▌简易百科推荐
摘 要 (OF作品展示)OF之前介绍了用python实现数据可视化、数据分析及一些小项目,但基本都是后端的知识。想要做一个好看的可视化大屏,我们还要学一些前端的知识(vue),网上有很多比...【详细内容】
2021-12-27  项目与数据管理    Tags:Vue   点击:(1)  评论:(0)  加入收藏
程序是如何被执行的  程序是如何被执行的?许多开发者可能也没法回答这个问题,大多数人更注重的是如何编写程序,却不会太注意编写好的程序是如何被运行,这并不是一个好...【详细内容】
2021-12-23  IT学习日记    Tags:程序   点击:(9)  评论:(0)  加入收藏
阅读收获✔️1. 了解单点登录实现原理✔️2. 掌握快速使用xxl-sso接入单点登录功能一、早期的多系统登录解决方案 单系统登录解决方案的核心是cookie,cookie携带会话id在浏览器...【详细内容】
2021-12-23  程序yuan    Tags:单点登录(   点击:(8)  评论:(0)  加入收藏
下载Eclipse RCP IDE如果你电脑上还没有安装Eclipse,那么请到这里下载对应版本的软件进行安装。具体的安装步骤就不在这赘述了。创建第一个标准Eclipse RCP应用(总共分为六步)1...【详细内容】
2021-12-22  阿福ChrisYuan    Tags:RCP应用   点击:(7)  评论:(0)  加入收藏
今天想简单聊一聊 Token 的 Value Capture,就是币的价值问题。首先说明啊,这个话题包含的内容非常之光,Token 的经济学设计也可以包含诸多问题,所以几乎不可能把这个问题说的清...【详细内容】
2021-12-21  唐少华TSH    Tags:Token   点击:(9)  评论:(0)  加入收藏
实现效果:假如有10条数据,分组展示,默认在当前页面展示4个,点击换一批,从第5个开始继续展示,到最后一组,再重新返回到第一组 data() { return { qList: [], //处理后...【详细内容】
2021-12-17  Mason程    Tags:VUE   点击:(14)  评论:(0)  加入收藏
什么是性能调优?(what) 为什么需要性能调优?(why) 什么时候需要性能调优?(when) 什么地方需要性能调优?(where) 什么时候来进行性能调优?(who) 怎么样进行性能调优?(How) 硬件配...【详细内容】
2021-12-16  软件测试小p    Tags:性能调优   点击:(19)  评论:(0)  加入收藏
Tasker 是一款适用于 Android 设备的高级自动化应用,它可以通过脚本让重复性的操作自动运行,提高效率。 不知道从哪里听说的抖音 app 会导致 OLED 屏幕烧屏。于是就现学现卖,自...【详细内容】
2021-12-15  ITBang    Tags:抖音防烧屏   点击:(23)  评论:(0)  加入收藏
11 月 23 日,Rust Moderation Team(审核团队)在 GitHub 上发布了辞职公告,即刻生效。根据公告,审核团队集体辞职是为了抗议 Rust 核心团队(Core team)在执行社区行为准则和标准上...【详细内容】
2021-12-15  InfoQ    Tags:Rust   点击:(24)  评论:(0)  加入收藏
一个项目的大部分API,测试用例在参数和参数值等信息会有很多相似的地方。我们可以复制API,复制用例来快速生成,然后做细微调整既可以满足我们的测试需求1.复制API:在菜单发布单...【详细内容】
2021-12-14  AutoMeter    Tags:AutoMeter   点击:(20)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条