Team Leader
Published October 14, 2015

What makes Docker so good?

I’ve been using Docker for one year to develop and deploy both professional and pet projects. I find it be a lot better than my previous stack, which was a tandem of Vagrant and Puppet. Why? Watch the video to learn about top 5 reasons why I like Docker!


In brief:

What makes Docker so good?

  • Portability — Docker containers can be run on any Linux server — on your laptop, your local server, public or private cloud, etc. It means that, if you want, your local development environment can be exactly the same as the production environment. What’s more, you can easily share the environment configuration with your teammates.
  • Isolation — Docker uses resource isolation features of the Linux kernel, so that every container run within a single Linux instance is independent and isolated from the other containers as well as the host.
  • Performance — Docker containers don’t include a separate operating system, like virtual machines do. Instead, they all share the same Linux kernel, and as as consequence, the performance of Docker containers is nearly identical to the bare metal!
  • Modularity — in Docker each part of your stack, like a web server or a database, should be run in a separate container. In fact, you can create your Docker environment using different containers linked together, the same way you build something with Lego bricks!
  • Community — on Docker Hub, the ultimate source of Docker images, there are 86 official images for different tools and thousands of unofficial images created by the community. What’s more, there are more than 50 thousand of repos on GitHub connected to Docker.

If you feel more comfortable with reading rather than watching and listening, you can read my blog post about this subject on Medium. And if you are interested in a real life use case, you may check out my blog posts about developing and deploying Schibsted.pl site with Docker:

 

Team Leader
Published October 14, 2015