This is a guide on installing TellusR from scratch. If you would just like to see TellusR in action and don’t have a running Solr to test with, please refer to our Tellusr/Solr Template over on GitHub instead.
TellusR consists of three isolated components which will be installed individually:
Two of these components are distributed as Docker containers. This guide assumes that you have Docker set up and running. Consult the official Docker documentation if you need to install it first.
If you prefer installing everything through our interactive shell script, you can skip the rest of this page and simply do this in your shell:
curl -s "https://dist.tellusr.com/install.sh" | bash
This script will then guide you through the installation process, which is more or less identical to what is described on the rest of this page, and you won’t need to go back and forth between your browser and your shell. After running the script, go directly to the next section to configure your cores.
If you’re more of a hands-on type, however, the rest of this page explains how to do the same thing as the script does, by yourself and in the shell.
The NLP Service is provided as a Docker image. Its installation is merely about loading the image and running it.
Make sure you meet the following requirements:
Download and load the image:
docker pull tellusr/nlp:2.3.3
Run it:
# Port that other components will use to connect to the NLP Service:
NLP_PORT=8000
# Languages to support:
NLP_LANGUAGES=en,no
# Run the image (using the above values as defaults if the variables are not set):
docker run -d --name tellusr_nlp \
-p ${NLP_PORT:-"8000"}:8000 \
--restart=always \
-v tellusr_nlp_models:/src/nlp_models/ \
-e WIKI_LANGS=${NLP_LANGUAGES:-"en,no"} \
-e MODEL_LANGS=${NLP_LANGUAGES:-"en,no"} \
-e NLP_DB="internal" \
tellusr/nlp:2.3.3
Please note that during its first execution, this docker image will download about 30 GB of data, so it may take a while.
The TellusR Central is also provided through Docker.
Download and load the image:
docker pull tellusr/central:2.3.3
Define URLS and usernames to access different parts of the system:
# Port on which the TellusR Central will be receiving connections:
TELLSUR_CENTRAL_PORT=8989
# Url of the NLP Service
# (use the same port as defined when starting the NLP container):
NLP_URL="http://host.docker.internal:8000/api/"
# Url to the Solr server where TellusR is to be integrated.
# Specify an explicit IP or `host.docker.internal` for accessing
# your localhost from within the docker container.
SOLR_URL="http://host.docker.internal:8983/solr"
# Other Solr options:
SOLR_USERNAME=solr
SOLR_PASSWORD=SolrRocks
# Postgres options:
POSTGRES_HOST=host.docker.internal
POSTGRES_PORT=5432
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_DATABASE=tellusr_central
Run it:
docker run -d --name="tellusr_central" \
-p $TELLSUR_CENTRAL_PORT:8989 \
--restart=always \
--stop-timeout=25 \
-e NLP_URL=${NLP_URL:-"http://host.docker.internal:8000/api/"} \
-e SOLR_URL=${SOLR_URL:-"http://host.docker.internal:8983/solr"} \
-e SOLR_USERNAME=${SOLR_USERNAME:-"solr"} \
-e SOLR_PASSWORD=${SOLR_PASSWORD:-"SolrRocks"} \
-e POSTGRES_HOST=$POSTGRES_HOST \
-e POSTGRES_PORT=$POSTGRES_PORT \
-e POSTGRES_USER=$POSTGRES_USER \
-e POSTGRES_PASSWORD=$POSTGRES_PASSWORD \
-e POSTGRES_DATABASE=$POSTGRES_DATABASE \
-t tellusr/central:2.3.3
Finally, there is the Solr integrator Jar-file. Download it, update some configuration files, restart Solr, and you’re all set:
Download the Jar-file.
Place it inside the /lib
folder in Solr Home
(create the folder if it doesn’t exist)
In the Solr Home
directory, create a file named tellusr.properties
and populate it with the following configuration:
# URL of the TellusR Central (since we will not be accessing this from within
# a Docker container, no special treatment for 'localhost' is needed):
tellusr.central_url=http://localhost:8989
# Path to a directory that the service can use for persistence:
tellusr.data_dir=/var/local/tellusr/integrator
For every Solr core that you would like to see in the TellusR Central, find its solrconfig.xml file and insert this:
<requestHandler name="/tellusr_config" class="com.sannsyn.solrplugins.TellusRConfig"/>
Restart Solr.
If everything’s done correctly, your Solr system is now integrated with TellusR. You should find the TellusR Central on your http://localhost:8989/ (unless you defined some other TELLSUR_CENTRAL_PORT above). If you fail to get this working, please refer to the Troubleshooting Guide.
You should now configure your cores