Interactive Editor

The ORD hosts an interactive web editor for Reaction and Dataset protos on Google Cloud Platform (GCP); it is available at https://editor.open-reaction-database.org.

This document describes the setup and deployment process for GCP.

Update the docker image

If the editor code has changed, you will need to update the docker image on Docker Hub (link). Before starting, make sure that you have installed all of the required dependencies.

Note

This updates the latest tag for the ord-editor image. To set a different tag add “:<tag>” to the end of the name; for example openreactiondatabase/ord-editor:v0.0.0.

$ cd "${ORD_SCHEMA_ROOT}/editor"
$ make package
$ docker build -t openreactiondatabase/ord-editor .
$ docker push openreactiondatabase/ord-editor

Create a new VM instance

Note

Only one instance at a time can access a persistent disk. If there is an existing instance, make sure to (1) remove the instance from the instance group and (2) shut down (and delete) the instance.

  1. In the VM instances page, click “Create instance”

  2. Choose “New VM instance from template” from the side panel

  3. Select ord-editor-template and click “Continue”

    • This template sets the container image as well as tags for firewall rules and metadata for Cloud Logging

  4. Edit the new instance configuration:

    1. Choose a better name

    2. Expand “Management, security, disks, networking, sole tenancy”

    3. On the “Disks” tab, click “Attach existing disk”

      • Disk -> ord-editor-data

      • Leave all other options at their default values

      • Click “Done”

    4. Expand the “Advanced container options”

    5. Under “Environment variables”, add ORD_EDITOR_DB=/mnt/disks/ord-editor-data

    6. Under “Volume mounts”, add a new volume:

      • Volume Type -> Disk

      • Mount path -> /mnt/disks/ord-editor-data

      • Disk name -> ord-editor-data

      • Mode -> Read/write

      • Click “Done”

  5. Click “Create” to initialize the VM

Expose the editor to the web

  1. Navigate to Instance groups in the GCP console

  2. Click on editor-instance-group

  3. Click on “Edit Group”

  4. Select the new instance under “Add an instance”

  5. Click “Save”