code-server像素级仿制的在线VSCode——搭建与扩展安装

今天在网上看到了一个很有意思的在线IDE工具code-server,号称界面像素级仿制vscode,就动手自己简单搭建了一下。
当然,这款工具无论使用哪种方式安装都是近乎一键式的,没有什么复杂的细节。

前述

code-server的官网:http://www.coder.com
其实官网本身就提供IDE的在线使用(http://ide.coder.com),但需要登录。不知道什么原因,网站的注册系统已经关闭了,只能以自建的形式使用code-server。

要注意的是:
Safari内核的浏览器无法正常打开在线IDE网页;完全的支持需要Chrome内核的浏览器。
即是,iPad无法在线使用这个IDE。

docker一键搭建

官网中显目地提供了使用docker一键搭建的命令:

$ docker run -it -p 127.0.0.1:8443:8443 -v "${PWD}:/home/coder/project" codercom/code-server --allow-http --no-auth

执行命令后就可以通过网址http//localhost:8443/在本机环境中访问。

端口映射

其中-p 127.0.0.1:8443:8443的地址映射127.0.0.1:8443是方便在本机环境下使用,但远程登录时会被拒绝访问。由于需要远程登录,改为 -p 8443:8443
修改此项后,就可以正常进行远程登录。

工作目录

-v "${PWD}:/home/coder/project"将IDE的工作目录设定成/home/coder/project。当然一般还是偏好自行选择工作空间,所以需要把目录修改一下。

密码登录

命令最后的 --no-auth 是一个不安全的选项,它允许任何人都能直接通过地址localhost:8443进入IDE,而IDE有权限对文件访问、修改和运行,这里选择去掉这个选项
去掉这个选项后,往后每次执行命令时都会显示随机密码,进入到网页后需要通过密码登录。

最终

偏好通过以下命令搭建/运行服务。

$ docker run -it -p 8443:8443 -v "${PWD}:/home/${USER}/code" codercom/code-server --allow-http

docker内的进程默认类似守护进程,用户登出后不终止。

包搭建

官方github下载包:https://github.com/cdr/code-server/releases
其实这也没什么好说的,都不用install安装,直接解包运行就ok了。

$ tar -xzvf code-server1.939-vsc1.33.1-linux-x64.tar.gz  //解包

$ cd code-server1.939-vsc1.33.1-linux-x64
$ ./code-server 工作目录 //运行

默认是密码登录,但ssh会话断开/用户登出时,进程会同时终止。

密码登录

无论通过哪种方式搭建,登录密码都可以多次多地使用。以守护进程运行并保存密码,就可以持续使用。

nohup执行

即在后台执行,而且在ssh会话断开/用户登出时也不会终止(忽略由于用户登出产生的终止信号)。

$ nohup ./code-server 工作目录 >server_log 2>&1

nohup执行需要重定向输出,否则会报错nohup: ignoring input and appending output to 'nohup.out'
执行后在server_log查看密码。

VSCode扩展安装

code-server内不能链接到扩展商店,需要自行使用.VSIX离线包离线安装扩展。
(虽然我记得有一刻还真连接上了扩展商店)
实测下,除语言包外的扩展都可以安装使用,其他扩展的使用是否有副作用未知。

.VSIX离线包获取

VSCode扩展商店网页版:https://marketplace.visualstudio.com/vscode
搜索扩展,进入到详情页之后,选择右下角的Download Extension下载离线包。
在这里插入图片描述
之后在扩展界面选择Install from VSIX,选择路径安装。
在这里插入图片描述

C++扩展

这里包括了我使用的扩展,改天打个包传上来,方面日后配置VSCode。
在这里插入图片描述

code-server使用

需要先行安装gcc g++ gdb,调试按键F5,具体当作VSCode用就是了。
Linux环境下VSCode的配置十分简单,所以不赘述了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章