Public | Automated Build

Last pushed: 8 months ago
Short Description
NoVNC and xterm in a container
Full Description

Alpine X11 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. Thanks to Alpine, this image is < 100Mb and eliminates the need to run an X11 server on your host machine.

Image Contents


  • Xvfb - X11 in a virtual framebuffer
  • x11vnc - A VNC server that scrapes the above X11 server
  • noNVC - A HTML5 canvas vnc viewer
  • Fluxbox - a small window manager
  • socat - for use with other containers
  • xterm - to demo that it works
  • supervisord - to keep it all running

    Usage


Stand-alone Demo

On Windows and OS X Only -
Determine the Docker machine IP address:

$ docker-machine ip $(docker-machine active)
192.168.99.101

Run:

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

Open a browser and hit the Connect button to see the xterm demo at http://<DOCKER_MACHINE_IP>: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:

  • An x11 network is defined to link the IDE and novnc containers
  • The IDE DISPLAY environment variable is set using the novnc container name
  • The screen size is adjustable to suit your preferences via environment variables
  • The only exposed port is for HTTP browser connections
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: psharkey/novnc:latest
    environment:
      # Adjust to your screen size
      - DISPLAY_WIDTH=1600
      - DISPLAY_HEIGHT=968
    ports:
      - "8080:8080"
    networks:
      - x11
networks:
  x11:

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

On DockerHub / GitHub


Thanks


Based on wine-x11-novnc-docker and octave-x11-novnc-docker.

Docker Pull Command
Owner
yuzhenpin
Source Repository