Setting up the new RSpace Chemistry service on Docker

Starting with RSpace 1.108, the new RSpace chemistry service replaces the existing Chemaxon chemistry service. This means you will need to install the new chemistry service to continue being able to access chemistry features inside of RSpace.

This guide only applies to on-prem RSpace installations. Cloud RSpace customers do not have to worry about this guide. If you're running RSpace Docker, Chemistry is already pre-bundled in your docker-compose.yaml file.

Installation steps (to be done on the RSpace server)

  1. Install docker (sometimes under the package name "docker.io") and docker-compose-v2 from the Ubuntu repos
  2. Download and start the container: docker run -d -p 8090:8090 --name oss-chemistry-container -v chemistry-files:/home/app rspaceops/oss-chemistry:latest
    1. The container will be called oss-chemistry-container
    2. the volume for the container will be called "chemistry-files". This is the same name if you previously ran Chemistry via docker-compose, so even if the run commands are different, the volume is the same
  3. You can check the docker container has started correctly by running "docker ps"
  4. In the RSpace deployment.properties file you will need to add some new entries and then restart tomcat9:
    1. REMOVE the line: chemistry.web.url=
    2. ADD the following lines:
      1. chemistry.provider=indigo
        chemistry.service.url=http://localhost:8090
        chemistry.service.indexOnStartup=true (optional, for reindexing previous chemicals, this can make RSpace startup take longer)
The GitHub repo contains more technical information on how docker runs: https://github.com/rspace-os/chemistry/
You will be able to test if the service is working correctly by launching chemical viewer / editor inside of RSpace and by also checking if the container is running with the command "docker ps"

Updating the service

We publish updates to the docker image. The latest stable version will always be tagged "latest", this can be updated via a "docker pull" like you would any other docker image.


How did we do?


Powered by HelpDocs (opens in a new tab)