Lessons learnt while building DockerDoodle - an application built using Docker SDK

Gaurav Gahlot (~gauravgahlot)


Description:

Docker is a buzz word these days. Almost everyone wants to run their application as a Docker container. While it is an unquestionably great idea, managing Docker containers running on independent servers can be challenging. For example, in a medium sized project, you may have five servers running about ten containers each. Managing and monitoring those containers on individual servers is going to be unpleasant.

So, how do we solve this problem? Well, you can use DockerDoodle.

DockerDoodle is an open source project. It is an application that allows you to manage your Docker containers, running on remote hosts, using a single platform. It is built on top of the Docker SDK and the Docker Engine API. Here are a few screenshots of DockerDoodle dashboards:

docker-stats803f4ec4108e84c2.md.gif

containers-count-min.md.gif

While most of the present open source solutions allow you to manage containers on a local machine. DockerDoodle allows you to manage as many servers as you want. You can use DockerDoodle to start, stop, or remove a container, on any connected Docker host. It uses the push/comet model to send container stats from the server to the web browser in real time.

DockerDoodle can be an inspiration and a great reference for a lot of people. It will be an example for others, who have an incredible idea but unsure about where to start. It's a great platform, to understand how Docker Engine API works underneath.

Content Outline:

  • Introduction to Docker
  • The Docker Architecture
  • Connecting to a Remote Docker Host (Demo)
  • The Docker API & SDK
  • Building Custom Tools - Why? & Where to start?
  • The Problem I Noticed
  • DockerDoodle Demo
  • DockerDoodle Architecture
  • Q&A

Slides:

The slides for this presentation can be found here.

Prerequisites:

  • Basic understanding of Docker and containers

Content URLs:

DockerDoodle

Speaker Info:

Name: Gaurav Gahlot

Title: Software Engineer, Blogger, C# Corner MVP, DZone MVB, and Speaker

BIO: Gaurav Gahlot is an experienced Software Engineer and his core competencies include Go (Golang), Docker, Kubernetes, DevOps Practices, and Agile Methodologies. He is an active contributor and has participated in many developer community events and conferences to share his knowledge and experience. His most recent talks include:

  • Getting started with Docker, at C# Corner Annual Conference - Delhi, April 2019
  • Using DockerDoodle to manage your containers, at Docker Inc. Pune Chapter - Pune, June 2019

Gaurav has been twice recognized as C# Corner Most Valuable Professional for his contributions. He is also a passionate blogger and has been awarded the Most Valuable Blogger title by DZone.

Section: Developer tools and automation
Type: Talks
Target Audience: Intermediate
Last Updated: