General instructions
You can create and deploy apps for multiple frameworks with the following steps.
Pre-requisites
Before deploying/launching your app with JHub Apps Launcher, you'll need:
- working code in a Jupyter Notebook or a Python script, and
- environment with all the necessary packages.
For all frameworks, you need to include the jhsingle-native-proxy >= 0.8.2
package in your environment along with the framework itself (e.g., bokeh, panel, etc.)
Also, be aware that jhub-apps
may be launching your app from a different directory than you used during development. Therefore, its important to always define absolute paths in your apps. For example, if you use pathlib
to define a path, you'll need to call .resolve()
in order to make it absolute.
Some frameworks may have additional package or code requirements.
Check out their specific documentation pages for details.
Steps
-
From the JHun App Launcher Home Screen, click on the "Create App" button in the top-right corner.
-
Fill in app-creation form with the details below.
Field | Description |
---|---|
Display Name | Provide meaningful name for your application |
Description (optional) | Add addition information about the application |
Thumbnail (optional) | Choose a meaningful thumbnail for your application. The default thumbnail is the application framework's logo. |
Framework | Select the framework used by your application from the dropdown. |
Filepath | Provide the path (from root in JupyterLab) to your application's code file. |
Conda Environment | Provide the environment used while developing your notebook/script which has jhsingle-native-proxy , the corresponding framework (e.g., panel , gradio , etc.), and additional requirements documented in framework-specific pages. |
Environment Variables (optional) | The set of environment variables, defined as valid JSON, to set before starting the app. This is useful when creating custom apps. |
Spawner profile | Instance type (i.e. machines with CPU/RAM/GPU resources) required for running your application. Only applicable if you're using KubeSpawner as the spawner for JupyterHub. |
Custom Command (required if the Framework is "Custom Command") | Python command to start an arbitrary app. |
Allow Public Access | Toggle to share the application with anyone on the internet, including unauthenticated users. |
Sharing | To share the application with a set of users and or groups. |
Example:
- When ready, click on the "Submit" button.
- Your App opens automatically in a few minutes.
You can now access and manage (start, stop, edit, and delete) this app from the JHub Apps Homepage, under "My Apps".