Fork of linuxserver/docker-rdesktop with Claude AI integration, enhanced GPU support, and Coolify deployment!
This fork adds powerful AI and GPU capabilities to the excellent LinuxServer.io RDesktop project:
- ๐ค Claude CLI Auto-Configuration - Set
ANTHROPIC_API_KEYand Claude works instantly! - ๐ฎ Full Nvidia GPU Support - CUDA, OpenGL, Vulkan with automatic detection
- ๐ค Custom User "hue" - Changed from default "abc" for better personalization
- ๐ Auto Password Generation - Secure random passwords on first run
- ๐ Coolify Integration - Ready-to-deploy with proper labels and networking
- ๐ฏ Desktop Shortcuts - Quick access to Claude chat, code review, and GPU monitoring
- ๐ Enhanced Audio - PulseAudio with equalizer and echo cancellation
# Clone this fork
git clone https://github.com/YOUR-USERNAME/docker-rdesktop.git
cd docker-rdesktop
# Build the Claude-enhanced image
./build-claude.sh
# Set your Claude API key (optional but recommended)
export ANTHROPIC_API_KEY="your-api-key"
# Run with GPU support
docker-compose -f docker-compose.claude.yml up -dUse docker-compose.coolify.yml - password is auto-generated and Claude works instantly when you set the API key!
๐ Full Coolify deployment guide
- Instant Setup: Just set
ANTHROPIC_API_KEY- no login needed! - Desktop Shortcuts: Quick access to Claude chat and code review
- Pre-configured: Optimal settings for development assistance
- Nvidia Support: Full CUDA, OpenGL, and Vulkan
- Auto-Detection: Configures GPU automatically
- Gaming Ready: Steam, Lutris pre-installed
- KDE Plasma: Beautiful, GPU-accelerated desktop
- Developer Tools: VS Code, Neovim, multiple terminals
- AI/ML Ready: PyTorch, TensorFlow, Jupyter pre-installed
- ๐ค Claude Integration Guide - Full Claude CLI setup and usage
- ๐ Coolify Deployment - Deploy with auto-scaling and management
- ๐ Original LinuxServer Docs - Base container documentation
| Variable | Description | Default |
|---|---|---|
ANTHROPIC_API_KEY |
Your Claude API key for instant setup | - |
RDP_PASSWORD |
Custom password (auto-generated if empty) | Random |
RDP_USERNAME |
Username for RDP login | hue |
PUID/PGID |
User/Group IDs | 1000 |
TZ |
Timezone | UTC |
- Protocol: RDP (Remote Desktop Protocol)
- Port: 3389
- Username:
hue - Password: Check container logs or
/config/rdp-credentials.txt
- Claude CLI (auto-configured!)
- Python, Node.js, Go, Rust
- PyTorch, TensorFlow
- Git, Docker, dev tools
- Steam & Lutris
- Discord
- OBS Studio
- GPU-accelerated games
- KDE Plasma with effects
- Multiple terminals
- System monitoring
- Customizable themes
Below is the original documentation from LinuxServer.io for the base rdesktop container:
The LinuxServer.io team brings you another container release featuring:
- regular and timely application updates
- easy user mappings (PGID, PUID)
- custom base image with s6 overlay
- weekly base OS updates with common layers across the entire LinuxServer.io ecosystem to minimise space usage, down time and bandwidth
- regular security updates
We utilise the docker manifest for multi-platform awareness. More information is available from docker here and our announcement here.
Simply pulling lscr.io/linuxserver/rdesktop:latest should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
The architectures supported by this image are:
| Architecture | Available | Tag |
|---|---|---|
| x86-64 | โ | amd64-<version tag> |
| arm64 | โ | arm64v8-<version tag> |
| armhf | โ |
This image provides various versions that are available via tags. Please read the descriptions carefully and exercise caution when using unstable or development tags.
| Tag | Available | Description |
|---|---|---|
| latest | โ | XFCE Alpine |
| ubuntu-xfce | โ | XFCE Ubuntu |
| fedora-xfce | โ | XFCE Fedora |
| arch-xfce | โ | XFCE Arch |
| debian-xfce | โ | XFCE Debian |
| alpine-kde | โ | KDE Alpine |
| ubuntu-kde | โ | KDE Ubuntu |
| fedora-kde | โ | KDE Fedora |
| arch-kde | โ | KDE Arch |
| debian-kde | โ | KDE Debian |
| alpine-mate | โ | MATE Alpine |
| ubuntu-mate | โ | MATE Ubuntu |
| fedora-mate | โ | MATE Fedora |
| arch-mate | โ | MATE Arch |
| debian-mate | โ | MATE Debian |
| alpine-i3 | โ | i3 Alpine |
| ubuntu-i3 | โ | i3 Ubuntu |
| fedora-i3 | โ | i3 Fedora |
| arch-i3 | โ | i3 Arch |
| debian-i3 | โ | i3 Debian |
| alpine-openbox | โ | Openbox Alpine |
| ubuntu-openbox | โ | Openbox Ubuntu |
| fedora-openbox | โ | Openbox Fedora |
| arch-openbox | โ | Openbox Arch |
| debian-openbox | โ | Openbox Debian |
| alpine-icewm | โ | IceWM Alpine |
| ubuntu-icewm | โ | IceWM Ubuntu |
| fedora-icewm | โ | IceWM Fedora |
| arch-icewm | โ | IceWM Arch |
| debian-icewm | โ | IceWM Debian |
The Default USERNAME and PASSWORD is: abc/abc
Unlike our other containers these Desktops are not designed to be upgraded by Docker, you will keep your home directory but anything you installed system level will be lost if you upgrade an existing container. To keep packages up to date instead use Ubuntu's own apt, Alpine's apk, Fedora's dnf, or Arch's pacman program
You will need a Remote Desktop client to access this container Wikipedia List, by default it listens on 3389, but you can change that port to whatever you wish on the host side IE 3390:3389.
The first thing you should do when you login to the container is to change the abc users password by issuing the passwd command.
Modern GUI desktop apps (including some flavors terminals) have issues with the latest Docker and syscall compatibility, you can use Docker with the --security-opt seccomp=unconfined setting to allow these syscalls or try podman as they have updated their codebase to support them
If you ever lose your password you can always reset it by execing into the container as root:
docker exec -it rdesktop passwd abcBy default we perform all logic for the abc user and we recommend using that user only in the container, but new users can be added as long as there is a startwm.sh executable script in their home directory.
All of these containers are configured with passwordless sudo, we make no efforts to secure or harden these containers and we do not recommend ever publishing their ports to the public Internet.
[Full original documentation continues below...]
-
Shell access whilst the container is running:
docker exec -it rdesktop /bin/bash -
To monitor the logs of the container in realtime:
docker logs -f rdesktop
-
Container version number:
docker inspect -f '{{ index .Config.Labels "build_version" }}' rdesktop -
Image version number:
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/rdesktop:latest
This fork builds upon the excellent work by:
- LinuxServer.io - Original rdesktop container
- Anthropic - Claude AI integration
- Nvidia - GPU drivers and CUDA toolkit
This project inherits the license from the original LinuxServer.io docker-rdesktop project.
