Docker

Cerebral Cortex is built for development and production use based on Docker technologies.

Container customizations and relevant docker-compose files are available in our GitHub repository. This repository contains configurations relevant for both development and production usage. As support is expanded for other cloud services, the GitHub page will reflect these additions.

Installation

Two things must be installed to utilize these Docker containers:

1. Docker
2. Docker-compose

Once these dependencies have been installed, the commands on this page will function properly.

Current Containers

Name Container Description
NGINX Custom: nginx Frontend web proxy for accessing services and providing TLS encryption
FluentD Custom: fluentd Open source data collector for unified logging layer
Elastic search elasticsearch A distributed, RESTful search and analytics engine
Kibana kibana Visualize your Elasticsearch data and navigate the Elastic Stack
Grafana grafana/grafana Time-series visualization tool for Cerebral Cortex datastreams
InfluxDB influxdb:1.2 Time-series database designed for IoT monitoring and used by Grafana
Jupyter Notebook Custom: md2k-spark-notebook Jupyter Spark Python3 notebook for providing a web based UI into Cerebral Cortex
Kafka wurstmeister/kafka Apache Kafka is a distributed streaming platform used by Cerebral Cortex for handing data ingestion and routing
ZooKeeper wurstmeister/zookeeper ZooKeeper is a distributed, open-source coordination service for distributed applications and used by Kafka
Cassandra Custom: cassandra:3.9 A distributed NoSQL database management system designed to handle large amounts of data across many commodity servers
MySQL mysql:5.7 A relational database management system

Development

Cerebral Cortex can be run for development purposes by cloning this repository and launching docker-compose. A machine with at least 16GB of memory is recommended to run all the containers.

> git clone https://github.com/MD2Korg/CerebralCortex-DockerCompose
> cd CerebralCortex-DockerCompose
> docker-compose up

This will tell Docker to download all dependencies and build the necessary local images before starting all the containers on your system. Once the system has started everything up, you can access Cerebral Cortex’s capabilities with these instructions

Production

 

 

 

Copyright © 2020 MD2K. MD2K was established by the National Institutes of Health Big Data to Knowledge Initiative (Grant #1U54EB020404)
Team: Cornell Tech, GA Tech, Harvard, U. Memphis, Northwestern, Ohio State, UCLA, UCSD, UCSF, UMass, U. Michigan, U. Utah, WVU