domino logo
4.1
  • Tech Ecosystem
  • Get Started
  • Domino Cloud
  • Collaborate
  • Projects
  • Work with Data
  • Workspaces
  • Environments
  • Executions
  • Deploy Models and Apps
  • Organizations
  • Security and Credentials
  • Notifications
  • Search
  • Domino CLI
  • Troubleshooting
  • Get Help
domino logo
About Domino
Domino Data LabKnowledge BaseData Science BlogTraining
User Guide
>
Environments
>
Customize Environments
>
Add Workspace IDEs

Add Workspace IDEs

Use Domino to define web-based tools to meet your needs in your compute environment. 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.

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
Configure an IDE

You must set up the environment’s Docker image installation instructions, and define Domino will serve the tool.

  1. 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/*
    ###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/*
    ###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/*
  2. Notebook properties are stored as yaml data mapping notebook names to their definitions. Enter this in the Properties for Notebooks 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}}/{{#if pathToOpen}}tree/{{pathToOpen}}{{/if}}" 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}}/{{#if pathToOpen}}tree/{{pathToOpen}}{{/if}}" 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
    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}}/{{#if pathToOpen}}tree/{{pathToOpen}}{{/if}}"
        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}}/{{#if pathToOpen}}tree/{{pathToOpen}}{{/if}}"
        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
Domino Data LabKnowledge BaseData Science BlogTraining
Copyright © 2022 Domino Data Lab. All rights reserved.