To replace the default tools in a Domino environment (such as JupyterLab or VS Code) with the tools in your image, you can add a startup script for each tool to your environment. To do this, you can either:
-
Add the script to the base image.
-
Add the script to the Dockerfile instructions.
See the following instructions for these tools:
- VS Code
- JupyterLab
-
The following example script shows how the JupyterLab script must configure access to files in the environment, set up the working directory, and define the necessary routing.
BASE_URL="/$DOMINO_PROJECT_OWNER/$DOMINO_PROJECT_NAME/notebookSession/$DOMINO_RUN_ID" CONF_FILE="$HOME/.jupyter/jupyter_lab_config.py" mkdir -p $(dirname "$CONF_FILE") cat > "$CONF_FILE" << EOF c = get_config() # Lab has access to all files in the environment c.NotebookApp.notebook_dir='/' # Lab starts in the domino working dir c.NotebookApp.default_url='/lab/tree${DOMINO_WORKING_DIR}' # Routing, networking and access c.NotebookApp.base_url='${BASE_URL}/' c.NotebookApp.tornado_settings={'headers': {'Content-Security-Policy': 'frame-ancestors *'}, 'static_url_prefix': '${BASE_URL}/static/'} c.NotebookApp.token=u'' c.NotebookApp.iopub_data_rate_limit=10000000000 # The default cell execution timeout in nbconvert is 30 seconds, set it to a year c.ExecutePreprocessor.timeout=365*24*60*60 EOF
- Other tools
-
See Domino pluggable notebooks.
After adding the script to the environment, modify the Pluggable Workspace Tools section of the environment definition to define the entrypoint for workspace tool startup:
-
Go to the environment you want to edit.
-
Click Edit Definition.
-
Go to Pluggable Workspace Tools.
-
Modify the entry so that the start field points to your tool’s launch script.
-