如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
https://github.com/gitpod-io/openvscode-server 提供了一个 VS Code 版本,它在远程机器上运行服务器,并允许通过现代 Web 浏览器进行访问。该 Docker 镜像由 LinuxServer.io 团队维护,确保应用的定期更新、安全加固和跨平台支持。
该镜像利用 Docker 清单实现多平台支持。直接拉取 lscr.io/linuxserver/openvscode-server:latest 即可获取对应架构的正确镜像,也可通过标签指定特定架构。
| 架构 | 支持情况 | 标签格式 |
|---|---|---|
| x86-64 | ✅ | amd64-<version tag> |
| arm64 | ✅ | arm64v8-<version tag> |
| 标签 | 支持情况 | 描述 |
|---|---|---|
| latest | ✅ | 稳定版本 |
| insiders | ✅ | 内测版本(开发版) |
CONNECTION_TOKEN 或 CONNECTION_SECRET 环境变量,可通过 http://<您的IP>:3000/?tkn=supersecrettoken 访问 Web UI(将 supersecrettoken 替换为实际设置的值)http://<您的IP>:3000 访问 Web UI/config/.ssh 目录bashgit config --global user.name "用户名" git config --global user.email "邮箱地址"
当通过 SWAG 反向代理时,OpenVSCode Server 内特定端口运行的自定义服务可通过 https://PORT.openvscode-server.domain.com 访问。需创建通配符 CNAME *.openvscode-server.domain.com 并确保 SWAG 证书覆盖这些子域。
以下提供 docker-compose 和 docker cli 两种部署方式。
[!NOTE] 除非标记为“可选”,否则所有参数均为必填项,必须提供值。
yaml--- services: openvscode-server: image: lscr.io/linuxserver/openvscode-server:latest container_name: openvscode-server environment: - PUID=1000 - PGID=1000 - TZ=Etc/UTC - CONNECTION_TOKEN= #可选 - CONNECTION_SECRET= #可选 - SUDO_PASSWORD=password #可选 - SUDO_PASSWORD_HASH= #可选 volumes: - /path/to/openvscode-server/config:/config ports: - 3000:3000 restart: unless-stopped
bashdocker run -d \ --name=openvscode-server \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Etc/UTC \ -e CONNECTION_TOKEN= `#可选` \ -e CONNECTION_SECRET= `#可选` \ -e SUDO_PASSWORD=password `#可选` \ -e SUDO_PASSWORD_HASH= `#可选` \ -p 3000:3000 \ -v /path/to/openvscode-server/config:/config \ --restart unless-stopped \ lscr.io/linuxserver/openvscode-server:latest
容器通过运行时参数进行配置,格式为 <外部>:<内部>。例如 -p 8080:80 表示将容器内 80 端口映射到主机 8080 端口。
| 参数 | 功能说明 |
|---|---|
-p 3000:3000 | Web UI 端口 |
-e PUID=1000 | 用户ID - 详见下文说明 |
-e PGID=1000 | 组ID - 详见下文说明 |
-e TZ=Etc/UTC | 指定时区,详见时区列表 |
-e CONNECTION_TOKEN= | 可选,Web UI 访问安全令牌(如 supersecrettoken) |
-e CONNECTION_SECRET= | 可选,容器内包含安全令牌的文件路径(如 /path/to/file),优先级高于 CONNECTION_TOKEN |
-e SUDO_PASSWORD=password | 可选,设置后用户在终端中拥有 sudo 权限,密码为此处指定值 |
-e SUDO_PASSWORD_HASH= | 可选,通过哈希值设置 sudo 密码(优先级高于 SUDO_PASSWORD),格式为 $类型$盐值$哈希值 |
-v /config | 包含所有相关配置文件 |
可通过特殊前缀 FILE__ 从文件设置任何环境变量。例如:
bash-e FILE__MYVAR=/run/secrets/mysecretvariable
这将根据 /run/secrets/mysecretvariable 文件内容设置环境变量 MYVAR。
所有镜像均支持通过可选参数 -e UMASK=022 覆盖容器内服务的默认 umask 设置。请注意,umask 是通过减法调整权限,而非直接设置权限。详情请参考umask 说明。
使用卷(-v 参数)时,主机与容器间可能出现权限问题。通过指定用户 PUID 和组 PGID 可避免此问题。确保主机上的卷目录归指定用户所有,权限问题将迎刃而解。
使用 id your_user 命令可获取当前用户的 PUID 和 PGID:
bashid your_user
示例输出:
textuid=1000(your_user) gid=1000(your_user) groups=1000(your_user)
https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=openvscode-server&query=%24.mods%5B%27openvscode-server%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml]([] "查看此容器可用的模块") https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=universal&query=%24.mods%5B%27universal%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml]([] "查看通用模块")
我们提供多种 https://github.com/linuxserver/docker-mods 以扩展容器功能。上方徽章链接可访问此镜像专用模块及适用于所有 LinuxServer.io 镜像的通用模块列表。
bashdocker exec -it openvscode-server /bin/bash
bashdocker logs -f openvscode-server
bashdocker inspect -f '{{ index .Config.Labels "build_version" }}' openvscode-server
bashdocker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/openvscode-server:latest
大多数镜像为静态版本,需通过更新镜像并重建容器来更新应用。以下是更新容器的说明:
更新镜像
bashdocker-compose pull
bashdocker-compose pull openvscode-server
更新容器
bashdocker-compose up -d
bashdocker-compose up -d openvscode-server
清理旧镜像
bashdocker image prune
更新镜像
bashdocker pull lscr.io/linuxserver/openvscode-server:latest
停止运行中的容器
bashdocker stop openvscode-server
删除容器
bashdocker rm openvscode-server
用相同参数重建容器
(若正确映射主机目录,/config 文件夹及设置将被保留)
清理旧镜像
bashdocker image prune
[!TIP] 推荐使用 Diun 接收更新通知。不建议使用自动更新容器的工具。
如需修改镜像进行开发或自定义,可按以下步骤本地构建:
bashgit clone https://github.com/linuxserver/docker-openvscode-server.git cd docker-openvscode-server docker build \ --no-cache \ --pull \ -t lscr.io/linuxserver/openvscode-server:latest .
可使用 lscr.io/linuxserver/qemu-static 在 x86_64 硬件上构建 ARM 变体,反之亦然:
bashdocker run --rm --privileged lscr.io/linuxserver/qemu-static --reset
注册后,可使用 -f Dockerfile.aarch64 指定架构对应的 Dockerfile。
/config/workspace 内容install-extension 工具以适配上游变更install-extension 工具供模块安装扩展.profile 和 .bashrcinsiders 标签以下是 linuxserver/openvscode-server 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务