/docker-remote-desktop

Docker image for Remote Desktop server with audio support

Primary LanguageShellMIT LicenseMIT

docker-remote-desktop

Build Status

Docker image with RDP server using xrdp on Ubuntu with XFCE.

Images are built weekly using several different versions of Ubuntu. The following image tags are generated:

  • ubuntu-groovy, ubuntu-20.10, latest
  • ubuntu-focal, ubuntu-20.04
  • ubuntu-eoan, ubuntu-19.10
  • ubuntu-bionic, ubuntu-18.04

Each image is tagged with both the codename and version of Ubuntu used for the base image. e.g. Ubuntu focal is tagged with ubuntu-focal and ubuntu-20.04

If you pull the image without a tag or with the latest tag, it uses ubuntu-groovy.

Running manually with docker commands

Download the latest version of the image:

docker pull scottyhardy/docker-remote-desktop

Or download a different version of the image using the appropriate tag:

docker pull scottyhardy/docker-remote-desktop:ubuntu-focal

To run with an interactive bash session:

docker run -it \
    --rm \
    --hostname="$(hostname)" \
    --publish="3389:3389/tcp" \
    --name="remote-desktop" \
    scottyhardy/docker-remote-desktop:latest /bin/bash

To start as a detached daemon:

docker run --detach \
    --rm \
    --hostname="$(hostname)" \
    --publish="3389:3389/tcp" \
    --name="remote-desktop" \
    scottyhardy/docker-remote-desktop:latest

To stop the detached container:

docker kill remote-desktop

Connecting with an RDP client

All Windows desktops and servers come with Remote Desktop pre-installed and macOS users can download the Microsoft Remote Desktop application for free from the App Store. For Linux users, I'd suggest using the Remmina Remote Desktop client.

For the hostname, use localhost if the container is hosted on the same machine you're running your Remote Desktop client on and for remote connections just use the name or IP address of the machine you are connecting to. NOTE: To connect to a remote machine, it will require TCP port 3389 to be exposed through the firewall.

To log in, use the following default user account details:

Username: ubuntu
Password: ubuntu

Screenshot of login prompt

Screenshot of XFCE desktop

Building docker-remote-desktop on your own machine

First, clone the GitHub repository:

git clone https://github.com/scottyhardy/docker-remote-desktop.git

cd docker-remote-desktop

You can then build the image with the supplied script:

./build

Or run the following docker command:

docker build -t docker-remote-desktop .

Running local images with scripts

I've created some simple scripts that give the minimum requirements for either running the container interactively or running as a detached daemon.

To run with an interactive bash session:

./run

To start as a detached daemon:

./start

To stop the detached container:

./stop