open-medicine-initiative / openMediAid

Crowd-sourced, non-profit, medical decision support system for patients and doctors. Symbiosis of supervised machine learning, bayesian networks and an open data community
19 stars 2 forks source link

Virtualized infrastructure for easy development setup and deployment #38

Open bennidi opened 9 years ago

bennidi commented 9 years ago

The process from cloning the repository to having a running version of the product including datastore with initial datasets etc. should be automated and painless. Following a simple set of instructions should give the developer a fully functional environment for development, testing, deployment etc.

Management of production environment needs to be considered (choosen technology should be fit for management of larger production clusters) but the focus now needs to be on developer convenience.

This issue is meant to collect ideas about what technologies could be used to build this kind of infrastructure.

bennidi commented 9 years ago

Docker

Probably one of the most popular technologies. Docker containers seem to exist for every relevant technology. A quite impressive ecosystem of services and support for dynamic management of clusters has been developed in short time. A vital community seems to indicate a useful technology.

Tutorials: Vagrant + Docker Setting up DevEnvironment with Vagrant and Docker Development Environment with Docker Docker Cheatsheet

Cluster management / Automation: Shipyard - Composable cluster management Project Atomic Managing Docker with Chef Kubernetes and Docker
Docker + Machine + Swarm + Compose

Containers: ArangoDB + NodeJS