Docker container for xrdp (both Xorg and Xvnc) currently based on Amazon Linux 2, CentOS, Fedora, and Ubuntu. Full desktop environments Mate and Xfce are supported. No privilege or sys_cap is required on the host system. These containers are lightweight and ideal for rapid development and testing purposes.
First pull the container with the appropriate tag. the following tag combinations are available:
- danchitnis/xrdp:amazon-mate
- danchitnis/xrdp:amazon-xfce
- danchitnis/xrdp:centos7-mate
- danchitnis/xrdp:centos7-xfce
- danchitnis/xrdp:centos8-xfce
- danchitnis/xrdp:fedora-xfce
- danchitnis/xrdp:ubuntu-xfce
Example:
docker pull danchitnis/xrdp:fedora-xfce
You have to give username, password, and sudo ability as input arguments to the docker run command. Hence, each user has three parameters. The process will exit if the input arguments are incorrect. Please run as interactive mode at first instance.
Example when username is foo, password is bar and sudo ability is no:
docker run -it -p 33890:3389 danchitnis/xrdp:fedora-xfce foo bar no
Similarly for detached mode
docker run -d -p 33890:3389 danchitnis/xrdp:fedora-xfce foo bar no
Once running, open Remote Desktop Connection. Enter "localhost:33890" as the address.
In this example username is foo and the password is bar.
You can add more users as a list of arguments and 3 inputs per user as described above
Example:
User | Pass | Sudo |
---|---|---|
foo | bar | yes |
baz | cox | no |
docker run -it -p 33890:3389 danchitnis/xrdp:fedora-xfce foo bar yes baz qux no
Adding a sudo user will give that user sudo ability so that you can run privileged command inside the container
For example start docker container with
docker run -d -p 33890:3389 danchitnis/xrdp:fedora-xfce foo bar yes
Once inside the container user foo can do this
sudo yum update
Notice that to give sudo ability, the third input parameter for each user should be explicitly yes, otherwise any other input will be ignored.
Inspired by frxyt/docker-xrdp
Ubuntu commands by danielguerra69/ubuntu-xrdp