Fig 1.
Overview of GUIdock.
Fig 2.
A comparison of the architecture of virtual machines and Docker software containers.
Virtual machines are denoted by cyan boxes and software containers are denoted by green boxes. The left stack is a Type-2 virtual machine (VM) which uses a hypervisor to emulate the guest OS. The application software, dependences, and the guest OS are all contained inside the VM. A separate VM, dependencies and guest OS are required for each application stack that is to be deployed. The middle stack depicts Docker container software on a Linux host. Docker uses the host Linux system and packages the application and dependencies into modular containers. No VM is necessary and the OS resources for the two application stacks are shared between different containers. The right stack depicts Docker on a non-Linux system. Because Docker requires Linux, a lightweight VM with a mini-Linux Guest OS is necessary to run Docker and encapsulate the software containers. This still has the advantage that only a single VM and Guest Linux system is required regardless of the number of containers.
Fig 3.
Software components added by GUIdock.
Our GUIdock package ensures that the X11 libraries are present in the Linux OS that runs Docker. In the case of a Linux host, this is the host OS. For Windows and Mac OS, this is a guest OS inside a VM. An additional X Windows emulation layer is configured for Windows and Mac OS which allows for GUI commands to be exported from the container software and rendered on the host.
Fig 4.
Screen shot of gene networks generated by GUIdock on (a) Linux, (b) Mac OS, (c) Microsoft Windows using the human cancer RNAseq data from Klijn et al.
Our goal is to demonstrate the reproducibility of analytical results when GUIdock is deployed on computers running different operating systems.
Fig 5.
A zoomed-in version of the screen shot of gene network generated by GUIdock using the human cancer RNAseq data from Klijn et al.
Nodes (CDKN2A, CDKN2B, CCNE1, CCND1) that are part of the cell cycle pathway are highlighted in blue. Nodes (ZRSR2, U2AF1, U2AF2, SRSF2, and SF3A1) that belong to the splicing pathway are highlighted in green.