威联通:“私人定制”在线代码编辑器
code-server 是基于微软 Visual Studio Code 项目打造的远程编辑器,可以运行在服务器,客户端通过浏览器访问即可使用。
前言
本文基于以下软硬件系统测试,不能完全保证其他系统的兼容性。
- QNAP TS-453Bmini 2+8G 内存
- QTS 4.4.1.1216
- code-server 1.41.1 with chinese-language-pack 1.41.0
基于 docker 的 code-server 安装教程有很多,比如这一篇群晖的安装。打包好的镜像也有很多,官方的 codercom/code-server,第三方的比如 linuxserver/code-server 和 xiumu/code-server-zh-cn。另外你也可以自己打包,容器的好处确实很多,即开即用,但是我的原则就是能上实机就上实机,能瞎折腾就瞎折腾。
废话不多说,直接开始!
安装
下载并安装中文语言包
从 code-server 项目的 Release 页面根据你的机型选择 linux-arm64 或者 linux-x86_64 下载下来,解压到 NAS 上,注意 code-server 这个文件就是我们所需的已经编译好的程序文件。
SSH 连接到 NAS 系统,切换到 code-server 所在目录。如何开启 SSH
首先我们先安装中文语言包插件,从 vscode官方市场 下载适配的中文语言包。目前 code-server 最新的版本是 1.41.1,我测试了 1.41.0 版本的中文语言包能够正常使用,通过浏览器抓包(F12)得到下载地址,替换相应的版本号即可构造需要版本的地址。
|
|
插件安装命令
|
|
插件卸载命令
|
|
code-server -h
脚本启动 codes-erver
由于 SSH 直接启动 code-server,断开 SSH 以后会关闭,而且也需要避免重启和系统升级带来的问题,所以需要写个 shell 脚本加入计划任务和开机启动。
启用默认级别日志,不启用 ssl 证书,不启用密码认证,默认使用 8080 端口,如果与其他服务有冲突请使用--port <port-number>
自行修改。有需要可以使用--cert <your-cert-path>
和--cert-key <your-cert-key-path>
选项启用 ssl 证书(腾讯云有免费一年的 TrustAsia 证书),使用--auth password
选项,同时设置系统环境变量export PASSWORD="your-own-password"
来设置密码认证。
|
|
本来想通过修改 daemon_mgr.conf 守护进程配置文件加入后台,发现重启 NAS 后会丢失用户修改的内容,还是只能通过计划任务和开机启动脚本来实现稳定运行。
QTS 的计划任务配置文件在 /etc/config/crontab,可以按照自己的需求设置定时重启任务
|
|
crontab 命令编写可以参考此处
QTS 自带也有 autorun.sh 开机脚本管理,虽然重启 NAS 不会丢失,但是 QTS 系统升级后会丢失,所以推荐安装第三方商店里的 BashIT 来管理。想要做到完美可以用 QDK 打包成 qpkg 安装。
|
|
重启 NAS 后,管理脚本会自动运行 code-server,浏览器打开http://<your-nas-ip>:8080/
即可使用。
后记
如果你的 Windows 上安装了 vscode,那么可以把 %userprofile%/.vscode/ 下面的 extensions 目录直接复制到/<your-user-path>/.local/share/code-server/
下面覆盖相应的插件目录,如果插件能够兼容,启动 code-server 后就能直接使用了。(不推荐使用,避免隐形的不兼容问题)
本文只是介绍编辑器的安装,不是集成开发环境的 IDE 的部署,所以能不能兼容大多数开发环境就不清楚了。
威联通在B站有个比较惨的官方号,没事可以关注,也许能获得有用的信息,传送门。