vscode server源码解析(一) - code server介绍

本文介绍了远程开发的概念,特别关注了CodeServer,一个基于VSCode的成熟的远程IDE服务器。文章详细阐述了CodeServer的安装、使用场景,以及其在企业级应用中的优势,如无需安装VSCode、简化SSH管理等。
摘要由CSDN通过智能技术生成

远程开发的背景

我们先来闲聊一下方便引入话题(当然是说正事的),如果你已经知道code server是干什么的,可以跳过这个章节
我们平时想要做开发写代码,就是自己的win或者mac机器上下载好IDE,比如vscode或者intellij,然后直接打开,配置一下环境就可以用了。当然,程序猿种类可是千千万,还有很多人是Linux上开发的,他们的操作系统甚至连图形化界面都没有,那他们怎么办呢?Linux上即使装了IDE,也没法看到呀!
这个场景下,我们就引出了“远程开发”这个概念,简单的来说,就是图形化界面展示在windows机器上,而实际的计算与存储都在远程Linux机器上(其实远程机器不只是Linux,win或者mac都行,只不过Linux比较常见,毕竟win或者mac都有图形化界面了,直接上去编码就行),这样一来,你虽然用着windows机器,但是却能直接查看与编写在Linux机器上的代码,使用Linux上的环境,甚至是代码跳转以及调试!

这里不妨大家可以打开一个网站
https://vscode.dev/
你会很惊讶,这不是vscode嘛!几天不见,跑浏览器上了
是的,他和基于electron的客户端vscode是一样一样的,只不过我们平时很少会接触到这种形态,当然单独的web vscode基本上还是个玩具,我们还需要在自己的Linux机器上部署好IDE的后台,就可以从这个网页上连接过去,然后就可以在远程机器编码了。这个场景下,用户根本都不需要安装vscode,只需要一个浏览器就可以
有兴趣的同学可以尝试一下github workspace功能,就是vscode server技术的应用
或者你可以直接看下vscode server的文档,但是我们今天主要说code server

Code Server引入

当然,vscode当前对于server模式至少在开源社区层面还没有非常完善,主要是remote-ssh这些插件太好用了,个人开发者一般没必要用到。
我们今天主要就说一个基于vscode,但是非常成熟的远程IDE Server解决方案,叫做Code Server,基于他,我们甚至可以去做Cloud IDE这种听起来很牛逼的东西

有兴趣的同学可以直接上官网

Code Serve的安装

好了,说了这么多,我们来动手先部署一个code server,来看看他的真面目,你需要准备的仅仅是两台机器,一台有图形化的win或者mac,或许就是你手上这台;另一台是任意的Linux机器,主机、虚拟机,如果是docker容器,可能要麻烦点,我们要处理端口映射问题,我在后面说明。

首先到github上,找到符合你机器架构的安装包

https://github.com/coder/code-server/releases

在这里插入图片描述

首先进入你的Linux机器,然后执行下面命令

# 下载
wget --no-check-certificate https://github.com/coder/code-server/releases/download/v4.21.2/code-server-4.21.2-linux-amd64.tar.gz

# 解压
tar -xzf code-server-4.21.2-linux-amd64.tar.gz

cd code-server-4.21.2-linux-amd64.tar.gz

然后我们需要执行启动命令了,这里我们就先说两个最重要的参数
–host 0.0.0.0,代表本机外的机器能访问,否则你是无法直接访问的,因为你的win或者mac和你的linux是两台独立的机器
–port 代表服务占用的端口,之后我们访问也是这个端口,用一个不太会与其他服务冲突的端口即可

./code-server --host 0.0.0.0 --port 9002

Code Server使用

安装完了,我们在自己的win或者mac上打开浏览器,然后输入

http://{ip}:{port}

这里的ip,是你Linux机器的ip地址,可以用ifconfig命令查看到
这里的port,就是上面说的,启动服务时使用–port指定的开放出来的端口

当然,深度使用起来你会发现,webview界面打不开,并且提示报错,这里如果有需要麻烦点赞收藏再私信我呀,有人看我再写解决方案hhh

场景说明

这个时候你就问了,这么麻烦,我为啥不用reomte-ssh直接连接,不是方便很多?
当然,对于个人开发者而言,remote-ssh可能更快速易懂,但是倘若我们把范围扩大到一个公司,有几千甚至几万的开发者要来使用的时候,code server就有如下几个优势了

  1. 每个开发不用单独安装vscode(remote-ssh必须安装vscode)
  2. 每个开发不用去关心ssh连接问题(remote-ssh需要输入密码或密钥)
  3. 管理员可以根据每个部门或团队的要求单独制作镜像,部署完成后只需要告诉用户一个url,用户打开url就可以实现开箱即用
  4. 部署模式可以更好地适应容器化部署,而且更安全(remote-ssh必须开22端口,这是高危的,而server模式可以当成一个普通的服务,可以用任意端口)

我将会在后面的文档进一步展开对于Server模式场景的运用以及技术实现

  • 13
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在Linux ARM平台上下载VSCode服务器,可以按照以下步骤进行操作。 首先,在你的Linux ARM设备上打开一个终端窗口。 然后,你可以前往VSCode官方网站(https://code.visualstudio.com/)找到“下载”选项,并选择“Server”标签。在“Server”标签页中,你可以找到不同操作系统和架构的VSCode服务器版本。 接下来,找到适用于Linux ARM架构的VSCode服务器版本并点击下载。你可以将下载的文件保存到你喜欢的位置,例如主目录或某个特定文件夹。 下载完成后,找到下载好的文件并解压缩它。你可以使用一些常用的解压工具,如tar命令或图形化解压软件。 解压缩后,你将得到一个文件夹,其中包含VSCode服务器的文件。 进入该文件夹,并找到其中的可执行文件。该文件通常称为“code-server”或类似的名称。你可以使用终端命令cd进入该文件夹,然后运行ls命令以查看其中的文件列表。 在终端中,使用Linux启动命令来启动VSCode服务器。这通常是运行"./code-server"或"./code-server --port=8080"等命令。 启动服务器后,在终端中会显示一些信息,包括服务器正在监听的端口号。 现在,你可以在你的Linux ARM设备的Web浏览器中访问该设备的IP地址,并在后面添加服务器监听的端口号(例如:http://192.168.1.100:8080)。这将打开VSCode服务器界面,并让你开始使用它。 总而言之,要在Linux ARM平台上下载VSCode服务器,你需要下载适用于该平台的版本并解压缩它,然后使用Linux命令启动服务器并在浏览器中访问它。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值