如果你使用 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://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png
LinuxServer.io团队提供的此容器具有以下特点:
Rdesktop - 包含多种流行Ubuntu桌面环境的容器,可通过RDP访问。
!https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/rdesktop.png
我们利用docker manifest实现多平台支持。只需拉取lscr.io/linuxserver/rdesktop:ubuntu-xfce即可获取适合您架构的正确镜像,也可通过标签拉取特定架构的镜像。
支持的架构:
| 架构 | 可用 | 标签 |
|---|---|---|
| x86-64 | ✅ | amd64-<version tag> |
| arm64 | ✅ | arm64v8-<version tag> |
此镜像提供多种版本,可通过标签获取。使用不稳定或开发标签时请谨慎。
| 标签 | 可用 | 描述 |
|---|---|---|
| latest | ❌ | 不可用 |
| ubuntu-xfce | ✅ | XFCE桌面环境(Ubuntu) |
| ubuntu-kde | ✅ | KDE桌面环境(Ubuntu) |
| ubuntu-mate | ✅ | MATE桌面环境(Ubuntu) |
| ubuntu-i3 | ✅ | i3窗口管理器(Ubuntu) |
| ubuntu-openbox | ✅ | Openbox窗口管理器(Ubuntu) |
| ubuntu-icewm | ✅ | IceWM窗口管理器(Ubuntu) |
默认用户名和密码:abc/abc
与我们其他容器不同,这些桌面环境不支持通过Docker升级。升级现有容器时,主目录会保留,但系统级安装的任何软件都会丢失。若要保持软件包最新,请使用Ubuntu的apt、Alpine的apk、Fedora的dnf或Arch的pacman程序
您需要远程桌面客户端访问此容器(***列表),默认监听3389端口,可在主机端更改端口映射(如3390:3389)。
登录容器后,首先应使用passwd命令修改abc用户的密码。
现代GUI桌面应用(包括部分终端)在最新Docker中存在系统调用兼容性问题,可使用--security-opt seccomp=unconfined参数允许这些系统调用,或尝试podman(其代码库已更新以支持这些调用)
若忘记密码,可通过root身份进入容器重置:
bashdocker exec -it rdesktop passwd abc
默认情况下,所有逻辑均针对abc用户配置,建议仅使用该用户。若需添加新用户,其主目录中必须存在可执行的startwm.sh脚本。
所有容器均配置为无密码sudo,我们未对容器进行安全加固,不建议将其端口暴露到公网。
所有应用设置通过环境变量传递:
| 变量 | 描述 |
|---|---|
| LC_ALL | 设置容器语言,如fr_FR.UTF-8(法语)、ar_AE.UTF-8(阿拉伯语) |
| NO_DECOR | 若设置,应用将无窗口边框(可通过Ctrl+Shift+d启用/禁用边框) |
| NO_FULL | 使用openbox时不自动全屏显示应用 |
环境变量LC_ALL可用于以非英语启动镜像,例如设置为LC_ALL=fr_FR.UTF-8可启动法语桌面会话。部分语言(如中文、日文、韩文)需要CJK字体支持,默认仅确保拉丁字符字体存在。可通过启动时的mod安装字体。
例如,在Debian系统中安装CJK字体:
-e DOCKER_MODS=linuxserver/mods:universal-package-install -e INSTALL_PACKAGES=fonts-noto-cjk -e LC_ALL=zh_CN.UTF-8
所有镜像包含https://github.com/linuxserver/proot-apps%EF%BC%8C%E5%85%81%E8%AE%B8%E5%B0%86%E4%BE%BF%E6%90%BA%E5%BA%94%E7%94%A8%E5%AE%89%E8%A3%85%E5%88%B0%E7%94%A8%E6%88%B7%60$HOME%60%E7%9B%AE%E5%BD%95%E7%9A%84%E6%8C%81%E4%B9%85%E5%AD%98%E5%82%A8%E4%B8%AD%E3%80%82%E8%BF%99%E4%BA%9B%E5%BA%94%E7%94%A8%E5%8F%8A%E5%85%B6%E8%AE%BE%E7%BD%AE%E5%9C%A8%E5%9F%BA%E7%A1%80%E5%AE%B9%E5%99%A8%E5%8D%87%E7%BA%A7%E5%90%8E%E4%BB%8D%E4%BC%9A%E4%BF%9D%E7%95%99%EF%BC%8C%E5%B9%B6%E5%8F%AF%E6%8C%82%E8%BD%BD%E5%88%B0%E4%B8%8D%E5%90%8C%E7%89%88%E6%9C%AC%E7%9A%84rdesktop%E5%AE%B9%E5%99%A8%E4%B8%AD%E4%BD%BF%E7%94%A8%EF%BC%88%E5%A6%82%E5%B0%86Alpine%E5%AE%B9%E5%99%A8%E7%9A%84%60/config%60%E7%9B%AE%E5%BD%95%E6%8C%82%E8%BD%BD%E5%88%B0Ubuntu%E5%AE%B9%E5%99%A8%EF%BC%8C%E9%80%9A%E8%BF%87%60proot-apps install`安装的应用和设置将保留)。
LinuxServer.io支持的应用列表见https://github.com/linuxserver/proot-apps?tab=readme-ov-file#supported-apps%E3%80%82
对于需要加速的应用或游戏,可将渲染设备挂载到容器中供应用使用:
--device /dev/dri:/dev/dri
此功能仅支持开源GPU驱动:
| 驱动 | 描述 |
|---|---|
| Intel | Intel集成显卡的i965和i915驱动 |
| AMD | AMD独立显卡或APU的AMDGPU、Radeon和ATI驱动 |
| NVIDIA | 仅nouveau2驱动,闭源NVIDIA驱动缺乏DRI3支持 |
通过Zink实现OpenGL支持以启用Nvidia加速,需使用以下运行参数:
| 参数 | 描述 |
|---|---|
| --gpus all | 通常传递系统中的一个Nvidia GPU(可筛选特定GPU) |
| --runtime nvidia | 指定Nvidia运行时,从主机挂载驱动和工具 |
Compose配置需将nvidia设为默认运行时:
sudo nvidia-ctk runtime configure --runtime=docker --set-as-default sudo service docker restart
Compose中分配GPU:
yamlservices: myimage: image: myname/myimage:mytag deploy: resources: reservations: devices: - driver: nvidia count: 1 capabilities: [compute,video,graphics,utility]
以下提供docker-compose和docker cli的使用示例(非可选参数必须提供值)。
yaml--- services: rdesktop: image: lscr.io/linuxserver/rdesktop:ubuntu-xfce container_name: rdesktop security_opt: - seccomp:unconfined # 可选,解决GUI兼容性问题 environment: - PUID=1000 # 用户ID - PGID=1000 # 组ID - TZ=Etc/UTC # 时区,如Asia/Shanghai volumes: - /var/run/docker.sock:/var/run/docker.sock # 可选,如需在容器内使用Docker - /path/to/rdesktop/data:/config # 可选,abc用户主目录(持久化数据) ports: - 3389:3389 # RDP端口映射 devices: - /dev/dri:/dev/dri # 可选,添加GL支持(仅Linux主机) shm_size: "1gb" # 可选,设置共享内存大小(防止浏览器崩溃) restart: unless-stopped
bashdocker run -d \ --name=rdesktop \ --security-opt seccomp=unconfined `# 可选` \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Etc/UTC \ -p 3389:3389 \ -v /var/run/docker.sock:/var/run/docker.sock `# 可选` \ -v /path/to/rdesktop/data:/config `# 可选` \ --device /dev/dri:/dev/dri `# 可选` \ --shm-size="1gb" `# 可选` \ --restart unless-stopped \ lscr.io/linuxserver/rdesktop:ubuntu-xfce
容器通过运行时参数配置,格式为<外部>:<内部>。例如-p 8080:80表示将容器内80端口映射到主机8080端口。
| 参数 | 功能 |
|---|---|
-p 3389:3389 | RDP访问端口 |
-e PUID=1000 | 用户ID(详见下文说明) |
-e PGID=1000 | 组ID(详见下文说明) |
-e TZ=Etc/UTC | 时区,参考时区列表 |
-v /var/run/docker.sock | 主机Docker socket(如需在容器内使用Docker) |
-v /config | abc用户的主目录 |
--device /dev/dri | 添加GL支持(仅Linux主机) |
--shm-size= | 设置共享内存大小(默认1GB,防止现代浏览器崩溃) |
--security-opt seccomp=unconfined | Docker引擎专用,解决现代GUI应用的系统调用问题 |
可通过FILE__前缀从文件设置环境变量:
bash-e FILE__MYVAR=/run/secrets/mysecretvariable
此命令会将MYVAR环境变量设置为/run/secrets/mysecretvariable文件的内容。
所有镜像支持通过-e UMASK=022覆盖默认umask设置。注意umask是权限掩码(减法)而非直接设置权限,详情参考umask说明。
使用卷(-v参数)时,主机与容器可能存在权限问题。通过指定PUID(用户ID)和PGID(组ID)可避免此问题。
确保主机卷目录归属于指定用户,权限问题将自动解决。
使用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=rdesktop&query=%24.mods%5B%27rdesktop%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml]([] "查看此容器可用的mods") 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]([] "查看通用mods")
我们提供多种https://github.com/linuxserver/docker-mods%E4%BB%A5%E6%89%A9%E5%B1%95%E5%AE%B9%E5%99%A8%E5%8A%9F%E8%83%BD%E3%80%82%E4%B8%8A%E6%96%B9%E5%8A%A8%E6%80%81%E5%BE%BD%E7%AB%A0%E9%93%BE%E6%8E%A5%E8%87%B3%E8%AF%A5%E9%95%9C%E5%83%8F%E4%B8%93%E7%94%A8mods%E5%92%8C%E9%80%82%E7%94%A8%E4%BA%8E%E6%89%80%E6%9C%89%E9%95%9C%E5%83%8F%E7%9A%84%E9%80%9A%E7%94%A8mods%E3%80%82
容器运行时进入shell:
bashdocker exec -it rdesktop /bin/bash
实时查看容器日志:
bashdocker logs -f rdesktop
容器版本号:
bashdocker inspect -f '{{ index .Config.Labels "build_version" }}' rdesktop
镜像版本号:
bashdocker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/rdesktop:ubuntu-xfce
大多数镜像为静态版本,需更新镜像并重建容器以更新应用(除非应用设置部分另有说明)。
更新镜像:
所有镜像:
bashdocker-compose pull
单个镜像:
bashdocker-compose pull rdesktop
更新容器:
所有容器:
bashdocker-compose up -d
单个容器:
bashdocker-compose up -d rdesktop
清理旧镜像:
bashdocker image prune
更新镜像:
bashdocker pull lscr.io/linuxserver/rdesktop:ubuntu-xfce
停止运行中的容器:
bashdocker stop rdesktop
删除容器:
bashdocker rm rdesktop
使用相同参数重建容器(若卷映射正确,/config目录和设置将保留)
清理旧镜像:
bashdocker image prune
[!TIP] 推荐使用Diun接收更新通知。不建议使用自动更新容器的工具。
如需本地修改镜像(开发或自定义):
bashgit clone https://github.com/linuxserver/docker-rdesktop.git cd docker-rdesktop docker build \ --no-cache \ --pull \ -t lscr.io/linuxserver/rdesktop:ubuntu-xfce .
可使用lscr.io/linuxserver/qemu-static在x86_64硬件上构建ARM变体,反之亦然:
bashdocker run --rm --privileged lscr.io/linuxserver/qemu-static --reset
注册后,可使用-f Dockerfile.aarch64指定ARM架构的Dockerfile。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务