Setting up a research environment and assembling all the software components and libraries can be a tedious job at times. This only gets difficult due to conflicting dependencies and constantly updating components.
Therefore maintaining docker images of tested and verified components can be very useful. It not only ensures that a working copy of all dependencies are available at all times but also the deployment is easier.
Most applications on docker are run as daemon, with very little or absolutely no human interaction. But there are some applications that require user interactivity and at the same time have complex software dependencies. Therefore I together with my fellow students and faculty at University of Washington, have been working on creating a transparent layer of graphical interface that supports remote display protocol using noVNC (browser based VNC client). Also the application contains a docker assembly layer by the name BaseImageBuilder. This library helps in stitching multiple docker images and finally creating a bootstrap scripts to start all dependency components.
We published a demo application and a supporting paper to demonstrate cytoscape running on a browser using our application.
Contributors: Varun Mittal; Ling-Hong Hung; Jayant Keswani; Daniel Kristiyanto; Sung Bong Lee; Ka Yee Yeung