Building custom tools with Docker API & SDK

Gaurav Gahlot
Gaurav GahlotSoftware Engineer
Building Custom Tools
with
Docker API & SDK
PyCon India 2019, Chennai
Agenda
What is Docker?
Docker Architecture
Connecting to a Remote Host
The Docker API & SDK
Building Custom Tools
The Problem I Noticed
DockerDoodle
DockerDoodle – Architecture
Q&A
Hi, I’m Gaurav Gahlot.
Blogger - QuickDevNotes
YouTube
Speaker
C# Corner MVP
DZone MVB
What is Docker?
Docker is:
- Docker, Inc. – the company
- the container runtime
- the open source project (now called Moby)
Docker helps in:
- multitenancy
- rapid deployment
- app isolation
Docker Architecture
Connecting to a Remote Host
Docker daemon listens via:
- unix (default)
- tcp
- fd
Remote Connection:
- tcp://0.0.0.0:2375 (http)
- tcp://0.0.0.0:2376 (https)
Demo - Configure Docker Daemon
The Docker API and SDK
The Docker API
- an API to interact with Docker Engine API
- Daemon and client API mismatches
- how to find the right version?
Docker SDK:
- Python
- Go
Building Custom Tools
Why?
- no tool available
- high costs for available tools
- custom tool serves better
Where to start?
- understand the problem
- pick a solution to start with
- select the right tech stack
The Problem I Noticed
The N x M container matrix
- N: the number of servers
- M: the number of containers per server
The Challenges?
- container management & monitoring
- time consuming
- slow deployments
- error prone
DockerDoodle
A web application
Monitor and manage containers
Operations:
– count
– stats
– start
– stop
– remove
DockerDoodle - Demo
Setup Docker Hosts
Application configuration
Managing containers
DockerDoodle - Architecture
tcp//:2375
tcp//:2375
tcp//:2375
x
WS
Thank you!
Any Questions?
Stay Connected!
Blog - Quick Dev Notes (https://quickdevnotes.com)
GitHub - @gauravgahlot
Twitter - @_gauravgahlot
1 of 14

More Related Content

Similar to Building custom tools with Docker API & SDK(20)

Building custom tools with Docker API & SDK