在云服务器部署 VS Code Server

本文最后更新于 2023年6月1日 下午

在云服务器部署 VS Code

环境

环境 版本
Debian GNU/Linux 11 (bullseye)
systemd (systemctl) 247 (247.3-7+deb11u3)
nginx 1.18.0
code-server 4.13.0

其中 code-server 会在后面用安装脚本安装。

具体步骤

1. 升级

在 root 权限下更新。

1
2
apt update
apt upgrade

2. 安装 VS Code Server

使用 Code 提供的安装脚本安装 Code Server。

1
curl -SL https://code-server.dev/install.sh | sh

3. 启动 Code 服务

1
2
3
systemctl enable --now code-server@$USER
systemctl start code-server@$USER
systemctl status code-server@$USER

可以看到 Code Server 正在监听 localhost:8080

1
2
3
~# curl localhost:8080
Found. Redirecting to ./login
~#

4. 在服务器控制台开放端口

在服务器的控制台中开放需要留给 Code Server 使用的端口。

Nginx 默认监听 80 端口,可在下一步客制化(例如此处改为 8443)。

5. 通过 Nginx 将 Code Server 公开

/etc/nginx/sites-available/code-server 中写入如下内容(如文件目录下没有 code-server 配置文件,新建一个即可):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
server {
listen 8443;
listen [::]:8443;

server_name {YOUR_DOMAIN_NAME};

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;
proxy_set_header X-Forwarded-Host $http_host;
}
}

注意将 {YOUR_DOMAIN_NAME} 替换为当前域名或者服务器 IP 地址。

并且通过软链接将内容同步到 /etc/nginx/sites-enabled 目录中:

1
ln -s /etc/nginx/sites-available/code-server /etc/nginx/sites-enabled/code-server

或者复制文件

1
cp /etc/nginx/sites-available code-server /etc/nginx/sites-enabled/code-server

然后可能需要重新加载服务:

1
systemctl daemon-reload

6. 修改访问密码

在这时 Code Server 已经可以通过设置的端口(此处为 8443)公开访问了,需要密码。

默认密码在 ~/.config/code-server/config.yaml 中,可以直接修改。

修改后重启 code-server 服务生效。

1
systemctl start code-server@$USER

VS Code on web browser

参考

  1. coder/code-server: VS Code in the browser
  2. Install Code-Server for VS code on Ubuntu 22.04 or 20.04 LTS
  3. Visual Studio Code Server
  4. How to Set Up code-server daemon on Ubuntu for Deep Learning: Root Access, Docker, systemd, NGINX Reverse-Proxy, and More | by Chan Woo Kim | Medium
  5. Studio Code Server not loading - Third party integrations - Home Assistant Community
  6. Deploy a service in Cloud Code for VS Code  |  Google Cloud
  7. Systemd 入门教程:命令篇 - 阮一峰的网络日志

在云服务器部署 VS Code Server
https://lingkang.dev/2023/06/01/code-server-cn/
作者
Lingkang
发布于
2023年6月1日
许可协议