← Back to context

Comment by pron

13 years ago

Can someone please explain what is Docker exactly? I've read this page, http://www.docker.com/about_docker/docker/, and didn't understand. What exactly does it encapsulate? What does the application see when it queries its environment?

Think about it as a very lightweight VM. You can do everything you can in a VM (which, in turn, can do everything you can in your regular system). Only thing is, it is a wrapper over lxc (Linux Containers) which means that you can only run Linux flavors and the host needs to have an advanced kernel (~3.8). Advantage is that if a VM needs ~80s to boot, a docker container can boot in <2s. And that's possible because a docker container shares the kernel of the host, (unlike VMs, which are all isolated)

  • Oh, so it's not only a deployment mechanism, but an actual runtime "VM".

    What does it add over linux containers?

    • Linux containers are its main ingredient. Docker itself provides a system for constructing the container images (with a neat super-fast caching/inheritance system that can pull from a central image repository), and manages the lifecycle of the containers. It also does some magic with ports and service discovery.

    • Technically - Creation, management, communication, networking. Smartly.

      Ecosystem - more and more people every day are integrating with their tools, building business around Docker, or extending support of existing business to Docker.