Docker 101
Rio de Janeiro Docker Meetup #1
November 26, 2013
@zaiste
open-source abstraction that automates the deployment of any application as a lightweight, portable, self-sufficient container that will run everywhere
Evolution: 1
Monolithic / Heterogenous
Evolution: 2
Single Server / Cloud (Private, Public)
Evolution: 3
Thick Client / Thin Client (Mobile, Tablet)
Origins
dotCloud Infrustructure
Software
Database / Worker / Queue / Framework
Hardware
Dev Server / Production Server / Programmer Machine
Unfication
Logistics Analogy
Container
Group of processes put together in a isolated env
Lightweight VM
High-level Analogy
chroot on steroids
Low-level Analogy
LXC
Abstraction over Linux Containers
LXC let’s you run Linux inside Linux.
Isolation
Resource / Network / Content
Unified Operations Set
Run / Start / Stop
Efficiency
Just a process
VM without VM overhead / Boots in seconds
Encapsulation
Portable, self-contained & safe runtime
Developer Perspective
Build once, Run anywhere
Sysadmin Perspective
Configure once, Run anything
Stats
Github 7400+ / Contributors 165+
100's of projects built on top of Docker
Use Cases
Private PaaS / Deployment / Continuous Integration