Containers in Reallife

The containers are a concept that applied to many of the products we use daily. For example, Android uses containers to separate Applications (Dalvik VM). Also Google announced in Google I/O 2014, that use containers to host user Apps and all their cloud services and they announced that they create 2 billion containers/week. Also containers as an ecosystem have raised in the latest few years with some of the applications that includes:

Highly performant, hyper scale deployments of hosts

Containers are known for both their high density/host and rapid start time which are a core feature to hyper scale deployment.

Micro-Services architecture

Micro-services is a concept that adds to the SOA Architecture in a way to divide a service into Sub services to increase isolation and allow better control to the deployment ways of the services.

Building a multi-user Platform-as-a-Service (PAAS) infrastructure

Sharing an OS layer is one of the best ways to implement a shared platform

Sharing Environments between Developers

Containers could encapsulate both an infrastructure and a code which allows synchronous development tools and stack.

Testing Environments

Bootstrapping a container with a test environment is a matter of seconds which eases the process of testing new tools and code on the required environment.

Research Validation

Shipping a research with a container containing all the needed code and tools to prove a research is an ultimate utility for research verification.