Skip to content

RADAR-base/RADAR-Docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


RADAR-Docker 2.2.0

Build Status

The dockerized RADAR stack for deploying the RADAR-base platform. Component repositories can be found at RADAR-base DockerHub org.

❗ Important Notice
We have made a lot of improvements to the RADAR-based platform over the past years. One of the key improvements is migrating to Kubernetes based deployment to allow automated application deployment, scaling, and management. Please note that the RADAR-Docker stack is not actively maintained and will be deprecated by the end of 2021. Hence, we strongly recommend you to set-up the Kubernetes based installation of the platform. You can find the installation guidelines from the RADAR-Kubernetes repository.

Please be informed that we are still working on improving our documentation. If you would like to contribute by improving the documentation or providing feedback, please contact the RADAR-base community via slack.

Installation instructions

To install RADAR-base stack, do the following:

  1. Install Docker Engine

  2. Install docker-compose using the installation guide or by following our wiki.

  3. Verify the Docker installation by running on the command-line:

    docker --version
    docker-compose --version

    This should show Docker version 1.12 or later and docker-compose version 1.9.0 or later.

  4. Install git for your platform.

    1. For Ubuntu

      sudo apt-get install git
  5. Clone RADAR-Docker repository from GitHub.

    git clone https://github.com/RADAR-base/RADAR-Docker.git
  6. Install required component stack following the instructions below.

Usage

RADAR-Docker currently offers two component stacks to run.

  1. A Docker-compose for components from Confluent Kafka Platform community
  2. A Docker-compose for components from RADAR-base platform.

Note: on macOS, remove sudo from all docker and docker-compose commands in the usage instructions below.

Confluent Kafka platform

Confluent Kafka platform offers integration of the basic components for streaming such as Zookeeper, Kafka brokers, Schema registry and REST-Proxy.

Run this stack in a single-node setup on the command-line:

cd RADAR-Docker/dcompose-stack/radar-cp-stack/
sudo docker-compose up -d

To stop this stack, run:

sudo docker-compose down

RADAR-base platform

In addition to Confluent Kafka platform components, RADAR-base platform offers

  • RADAR-HDFS-Connector - Cold storage of selected streams in Hadoop data storage,
  • RADAR-MongoDB-Connector - Hot storage of selected streams in MongoDB,
  • RADAR-Dashboard,
  • RADAR-Streams - real-time aggregated streams,
  • RADAR-Monitor - Status monitors,
  • RADAR-HotStorage via MongoDB,
  • RADAR-REST API,
  • A Hadoop cluster, and
  • An email server.
  • Management Portal - A web portal to manage patient monitoring studies.
  • RADAR-Gateway - A validating gateway to allow only valid and authentic data to the platform
  • Catalog server - A Service to share source-types configured in the platform. To run RADAR-base stack in a single node setup:
  1. Navigate to radar-cp-hadoop-stack:

    cd RADAR-Docker/dcompose-stack/radar-cp-hadoop-stack/
  2. Follow the README instructions there for correct configuration.

Logging

Set up a logging service by going to the dcompose-stack/logging directory and follow the README there.

Work in progress

The two following stacks will not work on with only Docker and docker-compose. For the Kerberos stack, the Kerberos image is not public. For the multi-host setup, also docker-swarm and Docker beta versions are needed.

Kerberized stack

In this setup, Kerberos is used to secure the connections between the Kafka brokers, Zookeeper and the Kafka REST API. Unfortunately, the Kerberos container from Confluent is not publicly available, so an alternative has to be found here.

$ cd wip/radar-cp-sasl-stack/
$ docker-compose up

Multi-host setup

In the end, we aim to deploy the platform in a multi-host environment. We are currently aiming for a deployment with Docker Swarm. This setup uses features that are not yet released in the stable Docker Engine. Once they are, this stack may become the main Docker stack. See the wip/radar-swarm-cp-stack/ directory for more information.