RD Docker: Docker Support Remote Desktop Protocols

支持多种远程桌面协议连接带有桌面环境的Docker镜像

RDPDocker是一个带有X11个和桌面环境的Docker镜像构建和容器创建工具,支持创建Ubuntu、Debian、ArchLinux、Fedora系统,支持Lingmo、GNOME、Xfce4、X11、SSH等环境。同时,允许用户通过NoMachine、RDP、VNC、SSH等方式远程访问容器。本工具以非虚拟化和极低开销的情况下,实现了多用户共享一台主机的办法,同时创建极快,随用随开,并且只占用内存、磁盘极少的空间,只需要主机安装Docker即可,支持无桌面的Linux服务器、WSL2、LXC、安卓手机运行。

RDPDocker is a Docker image building and container creation tool with X11 and desktop environments, supporting the creation of Ubuntu, Debian, Arch Linux, Fedora systems, Lingmo, GNOME, Xfce4, X11, SSH and other environments. Meanwhile, users are allowed to remotely access the container through methods such as NoMachine, RDP, VNC, SSH, etc. This tool enables multiple users to share a host without virtualization and at extremely low cost. It is also very fast to create, can be used and opened at any time, and only occupies minimal memory and disk space. Docker only needs to be installed on the host. Supports running on headless Linux servers desktop, WSL2, LXC, and Android phones .

Images / 镜像概览

Intros / 镜像介绍

#Desktop EnvIntroductionUbuntuDebianArchFedora
1Server无GUI和桌面,仅用于 SSH 远程连接使用
No GUI and DE, only used for SSH connect.
✔️✔️✔️✔️
2Lingmo一个拥有高效和优美GUI 的现代桌面环境
Lingmo is a DE with efficient and great UI
✔️*✔️*
3GNOMELinux常用图形的桌面环境, 功能齐全方便
DE for commonly used graphics on Linux
✔️✔️✔️✔️
4Xfce4L一个非常轻量, 简洁易用的Linux桌面环境
A lightweight & easy DE for UNIX-like OS.
✔️✔️✔️✔️
5Deepin深度科技自主开发的美观易用的桌面环境
主要由桌面、启动器、任务栏、控制中心
窗口管理器等组成,预装了深度特色应用
✔️✔️✔️✔️
6Plasma您可以使用Plasma 桌面环境轻松浏览网页
与同事、朋友和家人保持联系,管理文件
欣赏音乐和视频,并发挥创意和提高效率
✔️✔️✔️✔️
0X11GUIX11桌面基础环境集成远程桌面(构建专用)
X11 Desktop Basic Env (For build DE only.)
✔️✔️✔️✔️

 

Support DE / 各个系统桌面支持情况

系统名称
System Name
系统版本
System Version
ServerLingmoGNOMEXfce 4Deepin DEPlasmaX11 GUI
Ubuntu24.04✔️✔️✔️VNC会报错(1)✔️❌源未支持✔️✔️
Ubuntu22.04✔️❌源未支持✔️✔️✔️NX连不上(4)✔️✔️
Ubuntu20.04✔️❌源未支持✔️✔️❌源未支持✔️✔️
Debian13.00✔️❌源未支持✔️VNC连不上(1)✔️❌源未支持✔️仅NX能连(2)✔️
Debian12.00✔️✔️NX连不上✔️VNC连不上(1)✔️❌编译报错✔️仅NX能连(2)✔️
Debian11.00✔️❌源未支持✔️VNC连不上(1)✔️❌源未支持✔️仅NX能连(2)✔️
ArchOSdevel✔️❌源未支持✔️尚未测试✔️尚未测试✔️尚未测试✔️尚未测试✔️
Fedora40.00✔️❌源未支持✔️桌面报错(1)✔️需要root(3)✔️✔️✔️

Known Issues / 一些已知的问题

Desktop 桌面展示

Lingmo

lingmo

GNOME

gnome

Xfce4 Lite

xfce4l

Deepin DE

deepin

KDE Plasma

plasma

Usages 使用方法

Clone Git 克隆镜像

Run OCIs 运行容器

Connect 使用容器

  1. 下载NoMachine,然后安装 / Download NoMachine, Then install

  2. 打开NoMachine,选择左上角的Add,添加远程桌面

    Open NoMachine, select 'Add' and add remote desktop

    host:您docker所在主机地址 / Your Docker host address

    port:上面列出的端口,为1+ID+40,例如ID01,则端口为10140

    The ports listed above. 1+ID+40. For example, if ID is 01, then the port is 10140

  3. 然后您可以连接,用户名可以是root或者user,密码是上面列出Password:后面内容

    Then you can connect, the username can be 'root' or 'user', and the password is listed above

Q&A 错误排查

  1. 无法连接远程服务器 / Unable to connect to remote server

    • 检查服务器IP地址、防火墙端口是否打开

      Check if the server IP address and firewall are open

    • 检查Docker是否安装、容器是否超过启动

      Check if Docker is installed and if the container has exceeded startup time

    • 检查NoMachine服务是否正常运行

      Check if the NoMachine service is running properly

      在主机上执行:docker exec -it 容器名称 bash -c "ps -ef | grep nxserve"

      Execute on the host: docker exec -it Name bash -c "ps -ef | grep nxserve"

      正常情况输出(Normal output):

    • 如果没有,可以尝试运行(If not, you can try running it)

  2. 没有桌面/黑屏/白屏/卡死 / No desktop/black screen/white screen/stuck