Definition of Docker
Docker and the concept of software containers are getting a lot of airtime these days.
According to Wikipedia “Docker is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating-system-level virtualization on Linux, Mac OS and Windows.
What can Docker do
Docker is a tool that can package an application and its dependencies in a virtual container that can run on any Linux server. This helps enable flexibility and portability on where the application can run, whether on premises, public cloud, private cloud, bare metal, etc”.
Ultimately it allows a set of functionality to be packaged and just started on any Linux server. People use it for creating dedicated and special purposes Web Servers such as Apache HTTPD or Tomcat to provide a specific functionality. These can then be fired up easily and scaled by starting multiple containers with the same functionality.
How does Docker relate to service virtualization?
From an Ostia perspective, much as Portus is a perfect Service Virtualization application for the Cloud, Portus fits perfectly into the Docker model.
Portus works on the basis of a ‘Golden Copy’ of the virtual services to be which is then cloned to create images of that golden copy to facilitate multiple testers or testing environments. If the cloned copy is corrupted in any way, it can simply be recreated from the golden copy.
In this particular discussion, the cloned servers become containers which can then be fired up at will using Docker, making it a perfect application for this environment.