Jason's Google Code-in Blog

GCI Organization: FOSSASIA

Exploring Docker

miscellaneous

I have always seen Docker being talked about in the Linux community and have seen it as one of the DigitalOcean quick app install options. I had no idea what it was and did not realize it’s function. Docker is actually a container technology designed to improve efficiency. Traditional virtual machines house their own guest operating system and libraries to run an application. As one can see, if there is a large number of virtual machines running their own operating system, the workflow is inefficient. Docker combines the operating systems and other shared parts, so a low spec server could be running hundreds of containers without a hitch. Docker also makes collaboration and publishing easier since it creates a common framework for people to work together and scales easily.

Docker has a few tools in its Toolbox to help with development. Docker Compose is a tool used for running small parts of application on different containers while treating it as a single application. There is no need to manage each and every separate container. Docker Machine makes host creation easier by automatically configuring Docker on the hosts. Docker Swarm is exactly what it sounds like; it provides clustering capabilities to manage a whole swarm of Docker Engines in a since Docker Engine.

I found installation to be a little bit frustrating because I could not get Docker to work on one of my Windows computers. When I tried to ask for help, there was virtually nobody active on the IRC. I proceeded to install Docker on another computer without a problem. I made a 3rd tier application (talks to database) that connects to MySQL here and ran it on a Docker container.

By the way, Happy New Year!

hny

1 Jan 2016 #docker #virtual machine #linux #containers