I decided to install Docker on my Windows 8.1 laptop. I’ll also install it on a server in the future and see how easy it is to move containers around. There are lots of moving parts to a full-on container infrastructure, but I’m starting w/ the most basic of building blocks – Docker itself.
The Docker website has instructions for installing the software on the three main platforms out there – Linux, Mac OS X, and Windows. I followed the Windows Instructions. At the time of this writing, version 1.9.0a is the most recent installer. http://docs.docker.com/windows/started/
The first thing that got my attention was the fact that it’s really a small ecosystem that gets installed. The parts consist of:
Docker Client for Windows
Docker Toolbox management tool and ISO
Oracle VM VirtualBox
Git MSYS-git UNIX tools
Device Driver Install for Virtual Box…
At this point the install is supposedly good to go. One difference between the Docker instructions and my install, was a missing virtual box icon on my machine. Otherwise, all seemed fine when I executed the Docker Quickstart Terminal.
… And then .. It’s ready! A quick glance at the IP shows that it’s not on the same network as my laptop. My guess is that there’s some kind of Nat Translation happening behind the scenes.
The instructions on the Docker website remind users that the command prompt for the environment is part of a bash sell, and that they aren’t in Windows anymore. It’s a nice touch and while some might pick up on it, others might not.
The instructions then direct the user to verify the installation by running the command “docker run hello-world.” As they go on to explain, it’s a simple command, but it verifies a lot of important functions:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(Assuming it was not already locally available.)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
Beginning to end the Docker for Windows package took me 15-20 minutes to install, and I was starting with only a conceptual idea of the product. It’s surprisingly simple to setup the core software. Over the next few weeks, I’ll explore other topics such as exploring the various software images available, creating my own image(s), and moving images around between my local machine and AWS (and possibly other public cloud providers).