发布于 

在线版VS Code搭建教程:Code-Server

Code-Server是微软开发的在线版VS Code,即基于浏览器的IDE。有一个浏览器即可在线编写代码和相关文档,最大的优点应该是让iPad也能成为“生产力工具”吧。

此处示例使用Debian 11系统,root账号,原生环境(而非docker)。官方要求有1G内存和2核CPU,推荐选项里面是2G内存和2核CPU,硬盘则是32G SSD。
本处示例使用的是VPS,具体配置为:1G内存,1核CPU

演示地址:有点卡

PassWord : e739f99150586c4809728562

ide.myyrh.com

1.安装Code-Server

微软官方在GitHub上提供了不同的安装包,不过我们不需要手动下载解包安装,因为提供了一键安装脚本:

1
2
3
sudo apt install curl # 安装curl
sudo curl -fsSL https://code-server.dev/install.sh | sh #注意这里不是root用户
sudo systemctl enable --now code-server@$USER # 让Code-Server开机自启并后台运行,$USER改为你的当前用户。

此时,在当前用户的配置文件中就生成了Code-Server的密码,具体位置为~/.config/code-server/config.yaml,大致内容如下:

1
2
3
4
bind-addr: 127.0.0.1:8080 #内网地址
auth: password # 登录方式为密码
password: e739f99150586c4809728562 # 密码
cert: false # 不使用证书验证

2. 设置SSL和Nginx反代

由于默认开放的是内网,所以还需要使用Nginx反代,考虑到安全性,使用了Let’s Encrypt的SSL证书实现全程https访问。

1
2
sudo apt update # 更新一下
sudo apt install -y nginx certbot python3-certbot-nginx # 安装nginx和Let's Encrypt的certbot来安装ssl

当然,这里使用的python版certbot也可以被snap版的certbot替代,有一个能用的就行。
紧接着配置nginx的配置文件

1
2
/etc/nginx/sites-available/ # 进入配置文件的目录
sudo mv default code-server # 将默认配置文件名称改为code-server

使用sudo权限来编辑code-server文件,内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
server {
listen 80;
listen [::]:80;
server_name code.domain.com; # 注意,code.domain.com是你自己的网址

location / {
proxy_pass http://localhost:8080/;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
proxy_set_header Accept-Encoding gzip;
}
}

然后软链接一下nginx的配置文件,以及申请ssl证书

1
2
3
sudo rm /etc/nginx/sites-enabled/default # 删除旧的软链接
sudo ln -s /etc/nginx/sites-available/code-server /etc/nginx/sites-enabled/code-server # 新建软链接
sudo certbot --non-interactive --redirect --agree-tos --nginx -d code.domain.com -m email@example.com # 要注意这里的code.domain.com为你的域名,email@example.com为你的邮箱

至此,全部配置完成,理论上浏览器输入域名即可登录,但是推荐使用reboot命令重启系统,不然可能会遇到页面无法访问等问题(因为没有重启nginx).


本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。

本站由 @YuRuiH 创建,使用 Stellar 作为主题。