Feature: Virtual Desktop (VNC) for Renkulab

Update as of February 2022

We have recently incorporated the VNC into our suite of contributed Renku templates. You can now immediately start your Renku project with the desktop included! Check out our updated tutorial for more info:
https://renkulab.io/projects/learn-renku/renku-desktop

We also include instructions on how to customise your sessions with desktop icons and end-points.

Enjoy!


April 2021

We are excited to launch a new feature of Renkulab that you might be interested in: a virtual desktop (aka VNC). This has come about due to demand from the community. Many users are unfamiliar with the command line and so would rather use a desktop. Others might require visual applications, like for image processing.

For those who want to quickly launch it and have a look around, you can access it through this sample project:

RENKU desktop (VNC) sample project.

You may also fork it and make your own additions.

For those who are familiar with Docker images and the Gitlab CI/CD: the virtual desktop is built as a Docker image on top of the base renkulab-py image. If you have one of these images, you can change the heading to

ARG RENKU_BASE_IMAGE=renku/renkulab-vnc:401da03

instead of renkulab-py:...

When opening a project built from the sample project above, you will see the desktop automatically loaded.

Note that the operating system working behind the scenes is Ubuntu 20.04.

For those who have the default .renku/renku.ini settings, that is, default_url = /lab, you will see

and when the VNC button is clicked, you will see the desktop.

A terminal can be launched from the button below. We also include Git-GUI and gitk as default applications to manage your version control.

Also included is emacs, a popular text editor.

You can work as you would as if you had a real desktop, but on the back-end there is RENKU!

There are also a few additional features on the side-bar. This includes a full-screen mode and a clipboard. You can use this when you need to copy text or code from your local machine to the VNC. It acts as a bridge between the two.

This is a work in progress, so if you have any ideas, please let us know. We would like to use this base image as part of renku templates for specific use cases, like imaging.

For specific use cases, you can install packages in environments.yml or requirements.txt as usual.

This document will be a work-in-progress and we will be updating it as we go!

9 Likes