简介
对于学生党,平时使用多设备或者有使用平板、手机等移动设备来编写代码需求的人来说,非常需要一个方便快捷,兼容性强且具有代码云同步的编辑器。若平时使用 VS Code 来编辑代码,那么在服务器上配置一个 code-server,即可随时随地通过浏览器访问服务器的 VS Code 进行代码的编写和编译。现在一个轻量级云服务器的价格相当可观(2023.11 阿里云 2核2G 40GB 99元/一年),高校学生还可通过学生认证获得 7 个月的免费阿里云服务器。关于云服务器的购买和配置可自行搜索文章教程或到各云服务商官网去了解。本文只涉及在 Linux 服务器上安装部署 code-server 的内容。
安装
有多种方式安装,若服务器能连上 Github 则更推荐脚本安装方法,也是官方推荐的安装方法。若不能连上 Github 则推荐使用安装包的方式安装,在 Windows 下载后使用传输工具(如 Xftp)上传至服务器或使用 Github 镜像站。
- 脚本安装
在命令行输入命令:
sudo curl -fsSL https://code-server.dev/install.sh | sh
- 安装包安装
在官方 Github 仓库 https://github.com/coder/code-server/releases 下载对应最新版本安装包(如 4.18.0)。若服务器能够连上 Github 可在服务器上使用命令行下载安装包:
# Ubuntu
wget https://github.com/coder/code-server/releases/download/v4.18.0/code-server_4.18.0_amd64.deb
# 或
curl -O https://github.com/coder/code-server/releases/download/v4.18.0/code-server_4.18.0_amd64.deb
# CentOS
wget https://github.com/coder/code-server/releases/download/v4.18.0/code-server_4.18.0_amd64.rpm
# 或
curl -O https://github.com/coder/code-server/releases/download/v4.18.0/code-server_4.18.0_amd64.rpm
若服务器不能连 Github,可在 Windows 下载后传输至服务器或使用 Github 镜像站。在安装包目录下使用安装命令:
# Ubuntu
sudo dpkg -i code-server_4.18.0_amd64.deb
# CentOS
sudo rpm -i code-server_4.18.0_amd64.rpm
- 压缩包安装
不推荐。
配置
安装完成后,进行首次运行,在命令行输入:
code-server
会生成配置文件~/.config/code-server/config.yaml
,有如下提示:
info Using user-data-dir ~/.local/share/code-server
info Using config file ~/.config/code-server/config.yaml
info HTTP server listening on http://127.0.0.1:8080/
info - Authentication is enabled
info - Using password from ~/.config/code-server/config.yaml
info - Not serving HTTPS
info Session server listening on /root/.local/share/code-server/code-server-ipc.sock
使用 Ctrl+C 终止程序,再去修改配置文件:
vim ~/.config/code-server/config.yaml
配置文件修改如下:
bind-addr: 0.0.0.0:8080 # 访问地址和端口。默认 127.0.0.1 只能本机访问
auth: password
password: 123456 # 自定义访问密码
cert: false
注意,code-server 能够拥有直接修改服务器上所有文件的权限,因此为安全起见,自定义密码一定要复杂。同时,建议修改默认的 8080 端口,可选择 8081, 8082 等自定义无冲突的端口。最后,如果可以的话最好使用 IP 白名单来替代 0.0.0.0。
完成配置后再次输入:
# 前台运行
code-server
配置自启动:
sudo systemctl enable code-server@$USER # 服务自启动
sudo systemctl start code-server@$USER # 启动服务
sudo systemctl status code-server # 查看服务状态
配置成功后,重启服务器即可自行启动 code-server 服务并在后台运行。
使用
配置完成后,在浏览器输入 <服务器IP>:8080 可直接访问 code-server,使用刚设定好的密码登录。同本地 VS Code 一样可下载插件进行配置。
防火墙
若无法访问,可检查防火墙和云服务器对应端口是否打开。
在 Ubuntu 下使用ufw
:
ufw status verbose # 查看状态
ufw enable # 启动防火墙
ufw allow 8080 # 开放 8080 端口,允许访问
ufw reload # 重新加载防火墙
在 CentOS 下使用firewall
:
firewall-cmd --list-all-zones # 查看防火墙所有规则
firewall-cmd --add-port=8080/tcp # 添加开放 8080 端口规则
firewall-cmd --reload # 重新加载防火墙
云服务器
云服务器可能需要在控制台配置开放对应端口规则。如阿里云服务器需在安全组中打开对应端口: