noVNC is a HTML5 VNC client that runs well in any modern browser including mobile browsers (iPhone/iPad and Android).
Notable commits, announcements and news are posted to @noVNC
There are many companies/projects that have integrated noVNC into their products including: Ganeti Web Manager, Archipel, openQRM, OpenNode, OpenStack, Broadway (HTML5 GDK/GTK+ backend), OpenNebula, CloudSigma, Zentyal (formerly eBox), SlapOS, Intel MeshCentral, Amahi, Brightbox, Foreman and LibVNCServer. See this wiki page for more info and links.
Running in Chrome before and after connecting:
See more screenshots here.
HTML5 Canvas (with createImageData): Chrome, Firefox 3.6+, iOS Safari, Opera 11+, Internet Explorer 9+, etc.
HTML5 WebSockets: For browsers that do not have builtin WebSockets support, the project includes web-socket-js, a WebSockets emulator using Adobe Flash. iOS 4.2+ has built-in WebSocket support.
Fast Javascript Engine: this is not strictly a requirement, but without a fast Javascript engine, noVNC might be painfully slow.
I maintain a more detailed browser compatibility list here.
Unless you are using a VNC server with support for WebSockets connections (such as x11vnc/libvncserver), you need to use a WebSockets to TCP socket proxy. There is a python proxy included (‘websockify’).
Use the launch script to start a mini-webserver and the WebSockets proxy (websockify). The --vnc
option is used to specify the location of a running VNC server:
./utils/launch.sh --vnc localhost:5901
Point your browser to the cut-and-paste URL that is output by the launch script. Enter a password if the VNC server has one configured. Hit the Connect button and enjoy!
Advanced Usage. Generating an SSL certificate, starting a VNC server, advanced websockify usage, etc.
Integrating noVNC into existing projects.
Troubleshooting noVNC problems.
noVNC : Joel Martin (github.com/kanaka)
Included libraries: