VPS 部署在线代码编辑器 (2025) - Code-server 完整安装指南

想在平板上写代码?想随时随地访问你的开发环境?Code-server 可以帮你把 VS Code 搬到云端,通过浏览器随时访问——无需安装任何软件,只要有网络就能 Coding。
本文将手把手教你在 VPS 上部署 Code-server,包含 Docker 容器化部署、HTTPS 安全配置、以及多用户场景的最佳实践。
Code-server 是由 Coder 公司开源的项目,它将 Visual Studio Code 完整搬到浏览器中运行。与官方的 vscode.dev 不同,Code-server 运行在你自己的服务器上,拥有以下优势:
- 完整终端访问:直接在浏览器里操作服务器命令行
- 持久化工作区:代码和配置保存在服务器,换设备也能无缝接续
- 插件全支持:安装任意 VS Code 插件
- 资源无限制:利用服务器算力,低配电脑也能跑大型项目
- 隐私可控:数据存储在你自己的 VPS 上
| 配置 | 最低要求 | 推荐配置 |
|---|---|---|
| CPU | 1 核 | 2 核 |
| 内存 | 1GB | 2GB+ |
| 存储 | 10GB | 20GB+ SSD |
| 系统 | Ubuntu 20.04+ / Debian 11+ | Ubuntu 22.04 LTS |
确保 VPS 已安装 Docker 和 Docker Compose:
# 安装 Docker (如果还没装)
curl -fsSL https://get.docker.com | sh
sudo systemctl enable --now docker
# 验证安装
docker --version
docker compose version
在开始部署前,确保以下端口在 VPS 防火墙或云商安全组中已放行:
- 80 (TCP): Let's Encrypt 证书验证
- 443 (TCP): HTTPS 访问
# UFW 示例
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload
注意:如果你使用的是阿里云/腾讯云等国内厂商,还需要在控制台的"安全组"中添加规则。
使用 Docker 部署是最省心的方式,一条命令搞定依赖和隔离。
mkdir -p ~/code-server/{config,workspace}
cd ~/code-server
version: "3.8"
services:
code-server:
image: codercom/code-server:latest
container_name: code-server
restart: unless-stopped
ports:
- "127.0.0.1:8443:8080" # 只绑定本地,通过反向代理暴露
environment:
- PASSWORD=YourStrongPassword123! # 修改为强密码
- TZ=Asia/Shanghai
volumes:
- ./config:/home/coder/.config
- ./workspace:/home/coder/project
user: "1000:1000" # 使用非 root 用户
安全提示:端口绑定到
127.0.0.1是关键!这防止 Code-server 直接暴露在公网,所有流量必须经过反向代理。
docker compose up -d
现在 Code-server 已经在本地 8443 端口运行,但还不能从外部访问。下一步配置 HTTPS。
我们使用 Caddy 作为反向代理,它会自动申请和续期 Let's Encrypt 证书。
# Debian/Ubuntu
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
去 Cloudflare(或你的 DNS 服务商)添加 A 记录:
类型: A
名称: code
值: 你的 VPS IP
代理状态: 仅 DNS(灰色云朵) # 重要!SSL 由 Caddy 处理
验证 DNS 是否生效(在启动 Caddy 之前必须确认):
dig code.yourdomain.com +short
# 应该返回你的 VPS IP 地址
如果没有返回 IP,请等待 DNS 生效(通常几分钟),否则 SSL 证书申请会失败。
编辑 /etc/caddy/Caddyfile:
code.yourdomain.com {
reverse_proxy 127.0.0.1:8443
# 可选:添加基础认证双重保护
# basicauth {
# admin $2a$14$... # caddy hash-password 生成的 bcrypt
# }
}
sudo systemctl enable --now caddy
sudo systemctl reload caddy
几秒后,访问 https://code.yourdomain.com,你会看到 VS Code 的登录界面!输入在 docker-compose.yml 中设置的密码即可进入。
云端代码编辑器暴露在公网,安全配置至关重要:
在 docker-compose.yml 中设置至少 16 位的复杂密码,包含大小写、数字、特殊字符。
sudo apt install fail2ban -y
创建 /etc/fail2ban/jail.local:
[code-server]
enabled = true
port = http,https
filter = code-server
logpath = /var/log/caddy/access.log
maxretry = 5
bantime = 3600
cd ~/code-server
docker compose pull
docker compose up -d
如果你只通过 Code-server 访问服务器,可以禁用 SSH 密码登录,只允许密钥认证。
你的代码和配置都存储在 ~/code-server 目录下。请务必定期备份此目录! 一旦 VPS 故障或误删,所有工作成果将丢失。
tar -czvf code-server-backup-$(date +%Y%m%d).tar.gz ~/code-server
推荐使用 Rclone 同步到云存储(S3/OneDrive/Google Drive)。详见:VPS 自动备份方案
如果多人共享一台服务器,可以为每个用户创建独立容器:
services:
alice:
image: codercom/code-server:latest
ports:
- "127.0.0.1:8444:8080"
volumes:
- ./alice:/home/coder
environment:
- PASSWORD=AlicePassword
bob:
image: codercom/code-server:latest
ports:
- "127.0.0.1:8445:8080"
volumes:
- ./bob:/home/coder
environment:
- PASSWORD=BobPassword
然后在 Caddyfile 中配置不同子域名指向不同端口。
进入 Code-server 后,按 Ctrl+Shift+X 打开插件市场,推荐安装:
- Python / Go / Rust Analyzer - 语言支持
- GitLens - Git 增强
- Remote - SSH - 远程开发(如果需要连接其他服务器)
- Docker - 容器管理
- 确保 VPS 位于延迟较低的地区(如香港、日本)
- 升级到 2 核 2G 以上配置
- 使用 Cloudflare 的 Argo Tunnel 优化连接
- 检查 DNS 解析是否生效:
dig code.yourdomain.com +short - 确保 80 端口已开放(Let's Encrypt 需要)
- Cloudflare 代理必须关闭(灰色云朵)
可以,但需要注意:
- 域名需要备案
- 自行申请 SSL 证书(国内服务商不一定支持自动化)
Code-server 让你的开发环境真正实现"云端化"。配合一台稳定的 VPS,你可以在任何设备上——无论是 iPad、Chromebook 还是网吧电脑——打开浏览器就能写代码。
推荐配置:2 核 2G 以上的 VPS,搭配低延迟的亚洲机房(香港/日本/新加坡),体验最佳。
现在就动手部署你的云端 VS Code 吧!