Docker is an open-source project to easily create lightweight, portable, self-sufficient containers from any application. The same container that a developer builds and tests on a laptop can run at scale, in production, on VMs, bare metal, OpenStack clusters, public clouds and more.
That is from the docker.io website. I plain language, it is the ability to package applications and run them easily on Linux.
Think of it as the ability to make applications that run as easily as desktop application on a Mac. They just run.
My biggest concern is why would I want to use something like Docker. At my last gig, I would just fire up a new VM and do whatever I wanted. Either I would copy images or make puppet scripts to install and configure what I wanted.
So where does docker fit in all this ? Ease of use for the non sys admin. If you are a developer and you need a development environment, then docker is probably for you.
I this case, I want to try it with Elasticsearch. I REALLY feel installing docker for this is WAY more work than just installing Elasticsearch which I can do fairly quickly. The reason I am installing it is for the next application I want to test.
ON TO ELASTICSEARCH
Installing docker for Ubuntu go here , /install/ubuntulinux/ , the instructions are straight forward, so I won’t repeat them here. The only thing you have to be concerned about it running on Ubuntu 12.04. Docker runs best on a 3.8 kernel, so you will have to backport an older kernel. Ubuntu 13.10 has a 3.8 kernel, so you have that going for you.
Once you have docker installed, installing Elasticsearch from a trusted build is a single command
docker pull dockerfile/elasticsearch
In my next post, I will use Elasticsearch in a project I am working on to query Elasticsearch.