Expertise

We have the experience and knowledge to choose the right tools.

‹ Return to Expertise Index

Containers & Virtualization (Docker, Kubernetes, Vagrant, VMware, Hyper-V)

Docker
Vagrant

Contained Software: a Streamlined Solution

A container is much like a virtual machine, except instead of using bulky and expensive hardware emulation, the host operating system runs contained software in an isolated environment. The important isolation benefits of running software in a virtual machine are retained without the bootup delay or overhead of running a nested operating system.

Docker’s Advantage

The real advantage of Docker is that it is now practical to run the entire cycle of development, testing, and production tasks in containers based on the same system image. The description of a system image can be bundled with the application code and runs the same everywhere, from laptops and desktops to rack servers and cloud instances. Even hardware-accelerated desktop applications like Google Earth and Chrome can be run in containers with no perceived overhead.

Vagrant

Vagrant is a tool that eases the creation and management of virtual machines for local development environments. It can be easily installed on macOS, Windows, and Linux, so your entire team can experience Vagrant’s benefits.

For example, you might run a virtualized copy of your web application stack which is powered by Ubuntu Linux on a Mac or Windows desktop, complete with all libraries and special configuration necessary. Installing all of this from scratch without the assistance of a tool such as Vagrant can be extraordinarily time-consuming and frustrating.

Kubernetes

Kubernetes abstracts out the concept of containers even further, to allow declarative specification of related systems, as well as the ability to scale up or down system needs depending on required resources. This makes it possible to write applications that are scalable while at the same time allowing developers to work in their own local environments using identical configuration. Applications written with Kubernetes in mind can benefit from these additional levels of abstraction and let Kubernetes manage the deployments and coordination between different nodes and services. Kubernetes can work in a local instance or utilize native cloud-based resources without needing to change how the app works at the core.

Hyper-V

Working on the Windows side of the world and looking for a fast way to create virtual machines and easy networking? Talk to our experts today about using Hyper-V.

Send us a message!

Recent blog posts

Data Center Relocation Initiatives: Daunting But Achievable

Charles Chang · December 20, 2018

Disaster Recovery — Miami to Dallas in one hit

Ian Neilsen · October 3, 2017

Building Containers with Habitat

Kirk Harr · October 17, 2016

We are bigger than VR gear - Liquid Galaxy

Yaqi Chen · April 27, 2016

Creating Composite Docker Containers with Docker Compose

Kirk Harr · February 16, 2016

DevOpsDays India — 2015

Selvakumar Arumugam · September 30, 2015

Docker
Vagrant