theasp / docker-novnc

noVNC Display Container for Docker
MIT License
266 stars 145 forks source link
docker novnc vnc x11

noVNC Display Container

This image is intended to be used for displaying X11 applications from other containers in a browser. A stand-alone demo as well as a Version 2 composition.

Image Contents

Usage

Variables

You can specify the following variables:

Stand-alone Demo

Run:

$ docker run --rm -it -p 8080:8080 theasp/novnc

Open a browser and see the xterm demo at http://<server>:8080/vnc.html

V2 Composition

A version of the V2 docker-compose example is shown below to illustrate how this image can be used to greatly simplify the use of X11 applications in other containers. With just docker-compose up -d, your favorite IDE can be accessed via a browser.

Some notable features:

version: '2'
services:
  ide:
    image: psharkey/intellij:latest
#    image: psharkey/netbeans-8.1:latest
    environment:
      - DISPLAY=novnc:0.0
    depends_on:
      - novnc
    networks:
      - x11
  novnc:
    image: theasp/novnc:latest
    environment:
      # Adjust to your screen size
      - DISPLAY_WIDTH=1600
      - DISPLAY_HEIGHT=968
      - RUN_XTERM=no
    ports:
      - "8080:8080"
    networks:
      - x11
networks:
  x11:

If the IDE fails to start simply run docker-compose restart <container-name>.

On DockerHub / GitHub


Thanks


This is based on the alpine container by @psharkey: https://github.com/psharkey/docker/tree/master/novnc Based on wine-x11-novnc-docker and octave-x11-novnc-docker.