Docker Remote Desktop
Connect to a variety of different remote desktop services, directly from your browser.
Container based on Docker Baseimage Selkies by linuxserver with tint2, to expose a desktop-like environment to your browser.
The container comes preinstalled with the following remote desktop software:
Under no circumstances expose this container to anything but your local machine, unless you really know what you're doing. External access should be protected behind a reverse proxy with authentication, or behind a VPN.
The container can be accessed using Rustdesk Webviewer without opening ports, as long as Rustdesk is started, and for this purpose, set the variable AUTOSTART_RUSTDESK to true.
Application Setup
The application can be accessed at:
Usage
Some snippets to get you started.
docker-compose
services:
docker-remote-desktop:
image: ghcr.io/lanjelin/docker-remote-desktop:latest
container_name: docker-remote-desktop
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Oslo
- AUTOSTART_RUSTDESK=false
ports:
- "3000:3000" #http
- "3001:3001" #https
volumes:
- /path/to/config:/config
restart: unless-stopped
docker cli
docker run -d \
--name=docker-remote-desktop \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Europe/Oslo \
-e AUTOSTART_RUSTDESK=false \
-p 3000:3000 \
-p 3001:3001 \
-v /path/to/config:/config \
--restart unless-stopped \
ghcr.io/lanjelin/docker-remote-desktop:latest
Options in all Selkies based GUI containers
This container is based on Docker Baseimage Selkies which means there are additional environment variables and run configurations to enable or disable specific functionality.
Optional environment variables
| Variable | Description |
|---|---|
| CUSTOM_PORT | Internal port the container listens on for http if it needs to be swapped from the default 3000. |
| CUSTOM_HTTPS_PORT | Internal port the container listens on for https if it needs to be swapped from the default 3001. |
| CUSTOM_USER | HTTP Basic auth username, abc is default. |
| PASSWORD | HTTP Basic auth password, abc is default. If unset there will be no auth |
| SUBFOLDER | Subfolder for the application if running a subfolder reverse proxy, need both slashes IE /subfolder/ |
| TITLE | The page title displayed on the web browser, default "Selkies". |
| FM_HOME | This is the home directory (landing) for the file manager, default "/config". |
| START_DOCKER | If set to false a container with privilege will not automatically start the DinD Docker setup. |
| DRINODE | If mounting in /dev/dri for DRI3 GPU Acceleration allows you to specify the device to use IE /dev/dri/renderD128 |
Optional run configurations
| Variable | Description |
|---|---|
--privileged |
Will start a Docker in Docker (DinD) setup inside the container to use docker in an isolated environment. For increased performance mount the Docker directory inside the container to the host IE -v /home/user/docker-data:/var/lib/docker. |
-v /var/run/docker.sock:/var/run/docker.sock |
Mount in the host level Docker socket to either interact with it via CLI or use Docker enabled applications. |
--device /dev/dri:/dev/dri |
Mount a GPU into the container, this can be used in conjunction with the DRINODE environment variable to leverage a host video card for GPU accelerated appplications. Only Open Source drivers are supported IE (Intel,AMDGPU,Radeon,ATI,Nouveau) |