lsiobase/rdesktop本系列镜像旨在为任何Linux应用或桌面环境提供全功能的rdesktop Linux桌面体验。它们包含无密码sudo,以便轻松进行包安装、测试和定制。默认情况下,除用户主目录外,镜像不挂载其他内容,这意味着镜像更新时,/config 目录外的任何内容都将丢失。
latest 标签,这是有意为之。我们经常在版本间进行破坏性变更,且不像下游镜像那样发布发行说明。/config 目录,确保升级时用户数据不丢失所有应用设置通过环境变量传递:
| 变量名 | 描述 |
|---|---|
| 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字体,可通过启动时安装:
Debian系统安装CJK字体示例:
bash-e DOCKER_MODS=linuxserver/mods:universal-package-install \ -e INSTALL_PACKAGES=fonts-noto-cjk \ -e LC_ALL=zh_CN.UTF-8
所有基础镜像均为x86_64和aarch64平台构建:
| 发行版 | 当前标签 |
|---|---|
| Ubuntu | ubuntunoble |
所有镜像包含proot-apps,允许将便携应用安装到用户 $HOME 目录的持久存储中。这些应用及其设置在基础容器升级后仍保留,且可挂载到不同rdesktop容器中使用(例如Alpine容器的 /config 目录可挂载到Ubuntu容器,保留通过 proot-apps install 安装的应用和设置)。
LinuxServer支持的应用列表见此处。
基础镜像包含简单的Openbox桌面环境及启动单个应用所需的逻辑。构建应用容器的最低要求如下:
Dockerfile示例:
dockerfileFROM ghcr.io/linuxserver/baseimage-rdesktop:alpine320 RUN apk add --no-cache firefox COPY /root /
定义启动应用:
bashmkdir -p root/defaults echo "firefox" > root/defaults/autostart
目录结构:
├── Dockerfile └── root └── defaults └── autostart
构建和测试:
bashdocker build -t firefox . docker run --rm -it -p 3389:3389 firefox bash
启动后,通过RDP端口3389连接将看到全屏Firefox窗口。
注意:构建镜像时,许多应用需要
--security-opt seccomp=unconfined才能在Docker中运行,部分应用(如Chromium系列)可能需要启动标志(如--no-sandbox)规避Docker的系统调用限制,并非所有应用都能像原生Linux安装一样直接运行。
容器内应用启动器配置
可通过菜单定义文件允许用户右键桌面启动应用。示例Firefox菜单配置:
menu.xml文件内容:
xml<?xml version="1.0" encoding="utf-8"?> <openbox_menu xmlns="[***]"> <menu id="root-menu" label="MENU"> <item label="xterm" icon="/usr/share/pixmaps/xterm-color_48x48.xpm"><action name="Execute"><command>/usr/bin/xterm</command></action></item> <item label="FireFox" icon="/usr/share/icons/hicolor/48x48/apps/firefox.png"><action name="Execute"><command>/usr/bin/firefox</command></action></item> </menu> </openbox_menu>
添加到目录结构:
├── Dockerfile └── root └── defaults ├── autostart └── menu.xml
构建应用容器时使用Openbox作为窗口管理器,也可通过 startwm.sh 脚本完全替换启动的桌面环境,该脚本位于 defaults 目录:
目录结构:
├── Dockerfile └── root └── defaults └── startwm.sh
包含 startwm.sh 后,容器启动时将运行该脚本而非Openbox。配置示例可参考linuxserver/docker-rdesktop。
对于需要加速的应用或游戏,可将渲染设备挂载到容器中:
bash--device /dev/dri:/dev/dri
仅支持开源GPU驱动:
| 驱动 | 描述 |
|---|---|
| Intel | Intel核显芯片组的i965和i915驱动 |
| AMD | AMD独立显卡或APU芯片组的AMDGPU、Radeon和ATI驱动 |
| NVIDIA | 仅nouveau2驱动,闭源NVIDIA驱动缺乏DRI3支持 |
注意:Nvidia不兼容Alpine基础镜像
Nvidia支持通过Zink提供OpenGL加速,需以下运行标志:
| 参数 | 描述 |
|---|---|
| --gpus all | 通常传递系统中的单个Nvidia GPU(可过滤) |
| --runtime nvidia | 指定Nvidia运行时,从主机挂载驱动和工具 |
Compose配置:
需先将Nvidia设为默认运行时:
bashsudo nvidia-ctk runtime configure --runtime=docker --set-as-default sudo service docker restart
Compose文件示例:
yamlservices: myimage: image: myname/myimage:mytag deploy: resources: reservations: devices: - driver: nvidia count: 1 capabilities: [compute,video,graphics,utility]
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务