Using Docker to Streamline Development

Larger and more complex systems calls for new solutions. Splitting the larger systems into smaller modules helps us reason about them in isolation, but leads to cross-module dependencies both for services and shared data. Managing these dependencies, in particular in a development environment, is hard, and gets harder by the number of modules.

Virtualization and automation has taken us part of the way but it was Docker that finally helped us with some of the last wrinkles. This talk will show how the use of Docker can help streamline your development, versioning components and data, setting up dependencies and deployment to production.

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. Docker uses resource isolation features of the Linux kernel such as cgroups and kernel namespaces to allow independent “containers” to run within a single Linux instance, avoiding the overhead of starting virtual machines,

Video producer: