Datalore Help

Install Datalore Enterprise on AWS

The instruction below explains how to install Datalore on-premises in your AWS infrastructure.

Prerequisites

To install Datalore on-premises in AWS, you need the following tools installed on your machine:

You also need to download this repository to your computer and configure AWS CLI.

Installation procedures

Deploy your AWS infrastructure

  1. Go to the aws/terraform directory in the downloaded repository.

  2. Change the parameters in the terraform.tfvars file if needed. It is important to use the name of your AWS key pair in ssh_keypair.

  3. Run terraform init.

  4. Run terraform apply to get the following important information:
    • datalore_ip is the ip address of the machine where Datalore will be installed. This IP will be used for accessing Datalore.

    • init_script is the script which you will need to execute on the machine which the terraform script made for you.

Configure Datalore

  1. SSH to the machine with the IP (datalore_ip) from the previous step. Use ubuntu as a user and the private key from your AWS key pair that you specified in ssh_keypair.

    ssh -i <path_to_my_key> ubuntu@<datalore_ip>

  2. Log into the Hub respository:

    sudo docker login -u datalorecustomer

  3. Download the datalore.sh script:

    wget https://raw.githubusercontent.com/JetBrains/datalore-configs/main/aws/datalore.sh chmod +x datalore.sh

  4. Execute the init_script command from Step 2.4 (eg ./datalore.sh <a_lot_of_params> ).
  5. Execute the following command to start Datalore:

    ./datalore.sh start-datalore

Now you have access to Datalore at http://<datalore_ip>:8080 and Hub at http://datalore_ip>:8082. Your admin account in Hub is admin/changeme.

(Optional) Set up a hostname

If you don't want to access Datalore via ip and want to assign a human readable DNS name for it and add a load balancer with https, update the configuration using the steps belows.

  1. Go to http://<datalore_ip>:8082/hub/services (as admin user) and replace the ip addresses in Home URL, Base URLs, and Redirect URIs with a DNS name for both Datalore and Hub services.

  2. Go to the /home/ubuntu/datalore/datalore.env file and change the values of HUB_PUBLIC_BASE_URL and FRONTEND_URL.

Start/stop commands

Use the following commands:

  • To stop Datalore and Hub: ./datalore.sh stop

  • To start Datalore and Hub: ./datalore.sh start

  • To check Datalore logs: sudo docker logs datalore

  • To check Hub logs: sudo docker logs hub

    Admin user and licenses

    Set up an admin user

    To use the admin panel feature, you need a user with admin rights. Use the admin API token to create the first admin user.

    1. Start Datalore using the following command:

      ./datalore.sh --admin-token <ADMIN_API_TOKEN> start

    2. Send a POST request to http://<datalore_ip>:8080/api/admin/user/role?email=<EMAIL_OF_ADMIN_USER>&role=<NEW_USER_ROLE> with the header Authorization: <ADMIN_API_TOKEN> to change the user role.

    3. Choose of the following user roles:
      • REGULAR: regular user. Can be used to demote the user from the admin role.

      • ADMIN: admin user with access to the admin panel.

      • SUPER_ADMIN: admin user who can also change other users' roles via the admin panel.

    Add a license

    To use Datalore, you need to activate your license (provided in license.key ). Only with an activated license, you can start computations and create more than one user. Add a license for your Datalore installation in one of the following ways:

    • (Recommended) Use the admin panel:
      1. Set up your admin user.

      2. Open http://<datalore_ip>:8080/admin/license.

      3. Add your license.key in the Add new license field.

      Once submitted and verified, the license will be immediately activated (no restart needed). Licenses are persisted in the database, so they will work even after restart.

    • Use the admin REST API as an alternative to the admin panel:
      1. Send a POST request to http://<datalore_ip>:8080/api/admin/license with the header Authorization: <ADMIN_API_TOKEN> (token from this procedure ).

      2. Place your license.key in the request body.

    • Add a license to your Datalore installation as a file. To do so, define the LICENSE_PATHS environment variable with the comma-separated path to the respective file inside the Datalore container.
    Last modified: 09 June 2021