Domino is interoperable with your favorite languages, development tools and software. Learn how to bring your favorite IDEs to Domino.
When you add a Workspace IDE to your Compute Environment, you can:
-
Upgrade to a newer version of currently supported Domino tools such as Jupyter or RStudio.
-
Add new web-based tools like JupyterLab.
-
Manage the standard default tool for your team or organization across all projects.
Note
|
Your administrator must be aware that when the ShortLived.PluggableInteractiveSessionSubdomains feature flag is set to false , the httpProxy.requireSubdomain becomes required, and must be set to false .
Any pluggable definitions without this flag explicitly set will be invalid and are not usable.
|
You must set up the Environment’s Docker image installation instructions and define how Domino will serve the tool.
Note
| Typically, an administrator or advanced user does this work. Domino recommends that you contact your administrator for help defining the tool you want to use. |
-
In your Environment, enter the instructions to install and configure a tool in the Dockerfile instructions:
For Python version > 2.7.9
###Remove any old workspaces
RUN
apt-get remove rstudio-server -y &&
rm -rf /usr/local/lib/rstudio-server/rstudio-server &&
rm -rf /var/opt/workspaces
###Setup workspaces directory and retrieve workspace configs
RUN mkdir /var/opt/workspaces
RUN cd /tmp && wget https://github.com/dominodatalab/workspace-configs/archive/2018q2-v1.9.zip && unzip 2018q2-v1.9.zip && cp -Rf workspace-configs-2018q2-v1.9/. /var/opt/workspaces &&
rm -rf /var/opt/workspaces/workspace-logos && rm -rf /tmp/workspace-configs-2018q2-v1.9
#add update .Rprofile with Domino customizations
RUN
mv /var/opt/workspaces/rstudio/.Rprofile /home/ubuntu/.Rprofile &&
chown ubuntu:ubuntu /home/ubuntu/.Rprofile
# # # #Install Rstudio from workspaces
RUN chmod +x /var/opt/workspaces/rstudio/install
RUN /var/opt/workspaces/rstudio/install
# # # # # #Install Jupyterlab from workspaces
RUN chmod +x /var/opt/workspaces/Jupyterlab/install
RUN /var/opt/workspaces/Jupyterlab/install
# # #Install Jupyter from workspaces
RUN chmod +x /var/opt/workspaces/jupyter/install
RUN /var/opt/workspaces/jupyter/install
# Clean up temporary files
RUN
rm -Rf /var/lib/apt/lists/* &&
rm -Rf /tmp/*
For Python version < 2.7.9
###Remove any old workspaces
RUN
apt-get remove rstudio-server -y &&
rm -rf /usr/local/lib/rstudio-server/rstudio-server &&
rm -rf /var/opt/workspaces
###Setup workspaces directory and retrieve workspace configs
RUN mkdir /var/opt/workspaces
RUN cd /tmp && wget https://github.com/dominodatalab/workspace-configs/archive/2018q2-v1.9.zip && unzip 2018q2-v1.9.zip && cp -Rf workspace-configs-2018q2-v1.9/. /var/opt/workspaces &&
rm -rf /var/opt/workspaces/workspace-logos && rm -rf /tmp/workspace-configs-2018q2-v1.9
#add update .Rprofile with Domino customizations
RUN
mv /var/opt/workspaces/rstudio/.Rprofile /home/ubuntu/.Rprofile &&
chown ubuntu:ubuntu /home/ubuntu/.Rprofile
# # # #Install Rstudio from workspaces
RUN chmod +x /var/opt/workspaces/rstudio/install
RUN /var/opt/workspaces/rstudio/install
# # # # # #Install Jupyterlab from workspaces (pinned to avoid working directory bug in Jupyterlab)
RUN pip install jupyterlab==0.31.12
# # #Install Jupyter from workspaces
RUN chmod +x /var/opt/workspaces/jupyter/install
RUN /var/opt/workspaces/jupyter/install
# Clean up temporary files
RUN
rm -Rf /var/lib/apt/lists/* &&
rm -Rf /tmp/*
-
Notebook properties are stored as
yaml
data mapping notebook names to their definitions. Enter this in the Pluggable Workspace Tools field in the Environment definition.For example:
jupyter:
title: "Jupyter (Python, R, Julia)"
iconUrl: "/assets/images/workspace-logos/Jupyter.svg"
start: [ "/var/opt/workspaces/jupyter/start" ]
httpProxy:
port: 8888
rewrite: false
internalPath: "/{{ownerUsername}}/{{projectName}}/{{sessionPathComponent}}/{{runId}}/{{ requireSubdomain: false
supportedFileExtensions: [ ".ipynb" ]
jupyterlab:
title: "JupyterLab"
iconUrl: "/assets/images/workspace-logos/jupyterlab.svg"
start: [ /var/opt/workspaces/Jupyterlab/start.sh ]
httpProxy:
internalPath: "/{{ownerUsername}}/{{projectName}}/{{sessionPathComponent}}/{{runId}}/{{ port: 8888
rewrite: false
requireSubdomain: false
vscode:
title: "vscode"
iconUrl: "/assets/images/workspace-logos/vscode.svg"
start: [ "/var/opt/workspaces/vscode/start" ]
httpProxy:
port: 8888
requireSubdomain: false
rstudio:
title: "RStudio"
iconUrl: "/assets/images/workspace-logos/Rstudio.svg"
start: [ "/var/opt/workspaces/rstudio/start" ]
httpProxy:
port: 8888
requireSubdomain: false