noVNC is a VNC client using HTML5 (Web Sockets, Canvas) with encryption (wss://) support.
noVNC-Docker is a Docker image that bundles the noVNC client and WebSocket-to-TCP proxy/bridge, websockify, for ease-of-use.
docker pull gotget/novnc
Since there's no external files that are added in, it's easy to build a local image directly from GitHub:
docker build --tag gotget/novnc https://raw.githubusercontent.com/gotget/docker-novnc/master/Dockerfile
docker run \
--name noVNC \
--detach \
--publish 80:6080 \
gotget/novnc \
--vnc HOST:PORT
docker run \
--name noVNC \
--detach \
--publish 443:6080 \
--cert server.pem \
--ssl-only \
gotget/novnc \
--vnc HOST:PORT
Maybe you'd like to have a reverse proxy from Nginx to noVNC? This is easy to accomplish with Docker Compose, and you'll notice the format resembles that of the article, Thad.Getterman.org : Adding Django to Nginx with Docker.
---
version: '3'
services:
vnc_client1:
# VNC Client 1 : Variables
container_name: vnc_client1
hostname: vnc_client1
command: --vnc HOST:PORT
networks:
- frontend
# VNC Client 1 : Constants
image: gotget/novnc
restart: always
expose:
- 6080/tcp
web:
# Variables
container_name: nginx
volumes:
- /srv/letsencrypt/etc/:/etc/letsencrypt/:ro
- /srv/nginx/etc/:/etc/nginx/:ro
- /srv/nginx/log/:/var/log/nginx/
- /srv/sites/:/sites/:ro
- /srv/sites/default/:/usr/share/nginx/html/:ro
networks:
- frontend
# Constants
image: nginx:latest
restart: always
ports:
- 80:80 # HTTP
- 443:443 # HTTPS
networks:
frontend:
driver: bridge
- Louis T. Getterman IV
- Have an improvement? Your name goes here!
Written with StackEdit.