Code Server 是一个开源项目,将 VS Code 编辑器移植到 Web 端,支持跨平台访问,统一管理云端开发环境,资源消耗低,且支持完整 VS Code 扩展生态。
本文将详细介绍如何使用 Docker 部署 Code Server。
环境准备与 Docker 安装
安装 Docker 引擎
在 Ubuntu 系统上执行以下命令安装最新版 Docker:
bash
# 下载官方安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh
# 执行安装(需 sudo 权限)
sudo sh ./get-docker.sh
# 验证安装
docker --version
成功安装后,终端将显示类似 Docker version 24.0.5, build 24.0.5-0ubuntu1~22.04.1
的版本信息。
配置用户权限(可选)
为了避免每次使用 docker
命令时都需要加 sudo
,可以执行以下命令将当前用户添加到 Docker 用户组:
bash复制编辑sudo usermod -aG docker $USER
newgrp docker # 刷新用户组
基础部署配置
创建项目目录
首先,创建 Code Server 相关目录:
bash
mkdir -p ~/code-server/{config,workspace}
cd ~/code-server
编写 docker-compose.yml 配置文件
接下来,创建 docker-compose.yml
文件,配置 Code Server 容器:
yaml
services:
code-server:
image: linuxserver/code-server:latest
container_name: code-server
environment:
- PUID=1000 # 推荐设置与宿主机相同的用户ID
- PGID=1000
- TZ=Asia/Shanghai
- DEFAULT_WORKSPACE=/workspace
- PASSWORD=your_secure_password_here # 强烈建议修改
- SUDO_PASSWORD=your_sudo_password # 需要执行特权操作时使用
volumes:
- ./config:/config # 配置持久化
- ./workspace:/workspace # 工作目录
- /path/to/host/dir:/host # 可选宿主机目录挂载
network_mode: host # 使用 host 网络模式
restart: unless-stopped
在此配置文件中,PASSWORD
和 SUDO_PASSWORD
是首次登录时用来访问 Code Server 的重要凭据,请确保安全。
启动服务
使用 Docker Compose 启动 Code Server:
bash
# 后台启动
docker compose up -d
# 查看容器日志
docker compose logs -f
# 验证容器是否在运行
docker ps | grep code-server
访问 Code Server
通过浏览器访问:https://<服务器IP>:8443
首次访问时,浏览器可能会提示 SSL 证书警告。你可以忽略此警告(后续可以配置正式证书)。输入 PASSWORD
后即可登录。
推荐立即安装中文语言包,以便更方便使用:
集成 Docker 功能
如果你希望在 Code Server 中使用 Docker 功能,可以参考以下配置:
Docker 插件配置
如果你希望在 Code Server 中使用 Docker 插件(如管理容器、镜像等),可以在 docker-compose.yml
中加入以下配置(未知原因compose不可用):
yaml
services:
code-server:
# 其他配置保持不变...
volumes:
- /run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker
插件安装后可能会出现Docker is not installed.
,解决方法是设置 Docker 进程权限:
bash
sudo chmod 666 /var/run/docker.sock
日常维护命令
更新容器
为了确保容器的最新版本,使用以下命令进行更新:
bash
docker compose pull && docker compose up -d --force-recreate
备份配置
定期备份你的配置和工作目录:
bash
tar czvf code-server-backup-$(date +%Y%m%d).tar.gz config/ workspace/
扩展管理
查看已安装的扩展:
bash
docker exec code-server code-server --list-extensions
安装新的扩展,例如 Python 扩展:
bash
docker exec code-server code-server --install-extension ms-python.python
总结
通过本文介绍的步骤,你已经成功在 Docker 上部署了 Code Server,并且可以进行日常操作和扩展管理。你还可以根据需要集成 Docker 功能,方便在 Code Server 中进行容器管理。