Name: transmart-docker
Owner: tranSMART Foundation
Description: All in one test platform deployment for tranSMART through Docker
Forked from: gooodmorningopenstack/transmart-docker
Created: 2015-09-18 18:29:19.0
Updated: 2016-09-09 22:00:08.0
Pushed: 2015-09-18 20:30:22.0
Size: 130
Language: Groovy
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
Use Docker to build a single-machine version of transmart for demos of functionality and to provide a platform for tests.
This is an all-in-one tranSMART setup. All processes run on a container from this single Docker Image. If should be used only for demos and testing of the platform. In normal production the computational elements (SOLR, the database, R, and Tomcat) would be split among two or more machines: supporting higher throughput. See: the 1.2.4/distributed subdirectory of https://github.com/io-informatics/transmart-docker for a distributed example.
The amount of RAM is the critical part, at least 4GB should be assigned to the container.
Minimum requirements :
Recommended requirements :
There is a Dockerfile here, along with supporting material. One must use the docker command along with a special compute host, a docker machine. To install these elements, follow the install steps described on the official Docker website: https://docs.docker.com/
Docker must run in the context of a docker environment linked to a running docker-machine; once set up the, docker command will be available. In addition, you will need to know the docker-machine's local IP address; use the command docker-machine ip default (where default is the name of the docker-machine) to obtain the machine's local IP address, referred to as transmartIP, below.
These commands will deploy a docker container running tranSMART
git clone https://github.com/tranSMART-Foundation/transmart-docker.git
cd transmart-docker
docker build --rm -t myrepo/transmart .
docker run -d -p 80:8080 5432:5432 8983:8983 --name transmart myrepo/transmart
Launch your favorite browser and go to http://*transmartIP*
Note, in the above docker run command that port 80 on the docker-machines is mapped to port 8080 in the container. Likewise, the common port for PostgreSQL, port 5432, on the docker-machine is mapped to 5432 on transmartIP; so, psql can be used with that IP address for the hostname. Finally, the SOLR port is also mapped; thus, http://transmartIP:8983/solr will provide access to SOLR.
Look at running processes into your container with :
docker ps
docker exec transmart ps axuf
There must be at least 4 processes :
Probe your network access :
docker exec transmart netstat -tlup
nc localhost 80 -v
Check the logs :
docker logs transmart
There are a few versions (alternatives) of this setup, some of which are: