tom-and-the-toothfairies/pathways
:older_woman: :hospital: :pill: :pill:
Tom and the Toothfairies
Note: this document is written in Markdown. While it can be easily read in a
text editor, we recommend viewing our documentation on
Github for
maximum convenience - click-able links for example
This file contains instructions on how to install and run the project, as well
as an overview of the project's design. The target platform is Ubuntu 16.04.
At the time of writing the current release is 2.0
Installing Dependencies
This project uses Docker and Docker Compose. An installation script,
install-docker.sh, is provided for Ubuntu 16.04.
$ ./install-docker.shFor platforms other than Ubuntu, follow the installation instructions on
the Docker Website. Note - on other platforms, sudo is not
required for Docker commands.
You can test your Docker installation by running Docker's built in hello-world:
$ sudo docker run hello-worldRunning
The project can be run with Docker Compose:
$ sudo docker-compose up -dThe system is then accessible at localhost:4000.
To stop the system, run the following command
$ sudo docker-compose downFeatures
Release 2
The feature list for Release 2 can be found in the Release 2 features
document.
Release 1
The feature list for Release 1 can be found in the Release 1 features
document.
Change Log
Changes to the project are recorded in the change log.
Architecture Overview
The system is split into three distinct services; Panacea, Asclepius and Chiron.
The auxiliary service, Athloi, is used for automated testing.
They each run inside a Docker container. The containers can be easily managed
using docker-compose as mentioned earlier.
Panacea
Panacea is responsible for the UI and PML analysis. It is a web application that
serves the UI and exposes an API for uploading PML files for analysis.
More information about Panacea can be found in the Panacea README.
Chiron
Chiron houses the DINTO data. The data is compiled into a triple store. Chiron
exposes a HTTP API for querying the triple store.
More information about Chiron can be found in the Chiron README.
Asclepius
Asclepius acts as an intermediary between Panacea and Chiron. It accepts
requests to identify DDIs from Panacea, creates the necessary SPARQL query and
passes it on to Chiron.
More information about Asclepius can be found in the Asclepius README.
Athloi
Athloi is the service that runs our end to end tests.
More information about Athloi can be found in the Athloi README.
Building Manually
Docker Compose will pull down the required versions of each service from Docker
Hub when you run the project. If for some reason you wish to build these
services manually, instructions for doing so can be
found in the manual build documentation.