intro to docker at the 2016 evans developer relations conference
TRANSCRIPT
Introduction to DockerEvans Developer Relations Conference 2016
Mano Marks, Docker Developer Relations Director
@manomarks
+ManoMarks
Applications are changing
2
Loosely
Coupled
Services
Many Small
Servers
~2000Toda
y
Monolithic
Big Servers
Slow
changing
Rapidly
updated
The challenge: new matrix from hell
3
Virtual machines
ServerPublic Cloud
Disaster Recovery
Developer Laptop
Server Cluster
Data Center
Static
Website
Web Front EndBackground
Workers
User DBAnalytics
DB
Queue API
Endpoint
Development Test & QA Production Scale Out
Docker containers
4
Static
WebsiteWeb
Front End
Background
WorkersUser DB
Analytics
DB
QueueAPI
Endpoint
Any App Anywhere
Composable Dynamic Portable
Solution: Docker containers
5
• Packages up software binaries and dependencies
• Isolates software from each other
• Container is a standard format
• Easily portable across environment
• Allows ecosystem to develop around its standard
Container
Docker Basics
Docker Image
The basis of a Docker container
Docker Container
The standard unit in which the application service resides
Docker Engine
Creates, ships and runs Docker containers deployable on physical or virtual
host locally, in a datacenter or cloud service provider
Docker Registry
A registry for image storing and collaboration (on premise or cloud base)
\\\\\\
Linux Containers UnikernelsVM per Container
Linux Kernel
App App
App App App
App
HypervisorHypervisor
Efficient resource sharing
Application compatibility
Linux
Strong hardware isolation
High resource overhead
Strong hardware isolation
Efficient. Specialised. Immutable
App App App
Linux Linux
Hypervisor
Why do Developers Care?
• Build once…(finally) run anywhere
• A clean, safe, hygienic and portable runtime environment for your app.• Polyglot development: 88% of developers use more than one language (IDC)• Run each app in its own isolated container, with all it’s dependencies.• Automate testing, integration, packaging…anything you can script • Reduce/eliminate concerns about compatibility on different platforms, either your own or
your customers. • Cheap, zero-penalty containers to deploy services• All you need is a text editor, git, and Docker
Why do Ops Care?
• Configure once…run anything
• Make the entire lifecycle more efficient, consistent, and repeatable• Increase the quality of code produced by developers• Eliminate inconsistencies between development, test, production, and customer environments• Support segregation of duties• Significantly improves the speed and reliability of continuous deployment and continuous
integration systems• Because the containers are so lightweight, address significant performance, costs, deployment,
and portability issues normally associated with VMs
Demo Time
Docker for DevRel?
• Know where your developers are, they’re on Docker• Build samples for Docker• Build solutions in Docker• Easy to distribute images• Don’t worry about versions• Build small
Why do DevRel Care?
More about Docker
14
Open Source Project
•2B+ Docker Image Downloads
• 2000+ contributors
• 40K+ GitHub stars
• 200K+ Dockerized apps
• 240 Meetups in 70 countries
• 95K Meetup members
Containers as a Service provider
• Integrated platform for dev and IT
• Commercial technical support
Docker project sponsor
• Primary sponsor of Docker project
• Supports project maintainers
Docker
The Docker Project Docker Inc
The Docker ecosystem
Dev Tools
Official Repositories
Operating Systems
Big Data
Service Discovery
Build / Continuous Integration
Configuration ManagementConsulting &Training
Management
Storage
Clustering & Scheduling
Networking
Infrastructure & Service Providers
Storage
Security
Monitoring & Logging
15
More info:
https://docs.docker.
com
https://docker.com
Me:
@manomarks
(twitter and github)
+ManoMarks