docker-desktop-vnc is a Docker image to provide web VNC interface to access Ubuntu LXDE/LxQT desktop environment.
Run the docker container and access with port 6080
docker run -p 6080:80 -v /dev/shm:/dev/shm -v ${PWD}/storage:/root elestio/docker-desktop-vnc
Browse http://your_ip:6080/
Forward VNC service port 5900 to host by
docker run -p 6080:80 -p 5900:5900 -v /dev/shm:/dev/shm -v ${PWD}/storage:/root elestio/docker-desktop-vnc
Now, open the vnc viewer and connect to port 5900. If you would like to protect vnc service by password, set environment variable VNC_PASSWORD
, for example
docker run -p 6080:80 -p 5900:5900 -e VNC_PASSWORD=mypassword -v ${PWD}/storage:/root elestio/docker-desktop-vnc
A prompt will ask password either in the browser or vnc viewer.
This image provides base access authentication of HTTP via HTTP_PASSWORD
docker run -p 6080:80 -e HTTP_PASSWORD=mypassword -v ${PWD}/storage:/root elestio/docker-desktop-vnc
To connect with SSL, generate self signed SSL certificate first if you don't have it
mkdir -p ssl
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ssl/nginx.key -out ssl/nginx.crt
Specify SSL port by SSL_PORT
, certificate path to /etc/nginx/ssl
, and forward it to 6081
docker run -p 6081:443 -e SSL_PORT=443 -v ${PWD}/ssl:/etc/nginx/ssl -v ${PWD}/storage:/root elestio/docker-desktop-vnc
The Resolution of virtual desktop adapts browser window size when first connecting the server. You may choose a fixed resolution by passing RESOLUTION
environment variable, for example
docker run -p 6080:80 -e RESOLUTION=1920x1080 -v ${PWD}/storage:/root elestio/docker-desktop-vnc
The default user is root
. You may change the user and password respectively by USER
and PASSWORD
environment variable, for example,
docker run -p 6080:80 -e USER=doro -e PASSWORD=password -v ${PWD}/storage:/root elestio/docker-desktop-vnc
This is a fork from: https://github.com/fcwu/docker-ubuntu-vnc-desktop