Interactive Apps (Plugins)¶
Interactive Apps provide a means for a user to launch and connect to an interactive batch job running a local web server (called Interactive App sessions) through the OnDemand portal (e.g., VNC server, Jupyter Notebook server, RStudio server, COMSOL server). They are considered Dashboard App Plugins and not Passenger apps such as the Dashboard App, Shell App, Files App, and etc.
This means that the Dashboard is responsible for building the Interactive App’s web form, submitting the batch job, and displaying connection information to the user for a running Interactive App session.
To get started it is recommended that an administrator walks through Install Desktops at least once for your Open OnDemand portal. This will ensure your Open OnDemand portal is properly configured to host Interactive Apps.
Usage¶
A production Interactive App (denoted by sys
) is deployed on the
OnDemand Server under the following path on the local file system:
/var/www/ood/apps/sys/my_app
A personal sandbox Interactive App (denoted by dev
) that you are
developing is deployed in your home directory under the following path:
${HOME}/ondemand/dev/my_app
Interactive Apps are Dashboard App plugins. They can be directly accessed through the following URLs:
-
GET
/pun/sys/dashboard/batch_connect/
(app_type)/
(app_name)/session_contexts/new
¶ this view displays the HTML form for launching the corresponding Interactive App session
Example:
Display the HTML form for the production Interactive App in the
my_app
directoryGET /pun/sys/dashboard/batch_connect/sys/my_app/session_contexts/new HTTP/1.1 Host: ondemand.my_center.edu
Example:
Display the HTML form for my development sandbox Interactive App in the
my_app
directoryGET /pun/sys/dashboard/batch_connect/dev/my_app/session_contexts/new HTTP/1.1 Host: ondemand.my_center.edu
Parameters: - app_type – Type of Interactive App (
sys
ordev
) - app_name – Directory name of the deployed Interactive App
- app_type – Type of Interactive App (
-
GET
/pun/sys/dashboard/batch_connect/sessions
¶ this view lists all active Interactive App sessions and provides an interface for the user to connect to or delete a running session