SlideShare a Scribd company logo
Docker 101
Mike Coleman – Technology Evangelist, Docker
@mikegcoleman
2
Who Am I?
• Technology evangelist at Docker
• 1st half of my career was in IT  Networking admin
• 2nd half of my career has been in product management  marketing for Docker,
Puppet Labs, VMware, and Microsoft.
• Definitely more IT pro than developer
• @mikegcoleman (but mostly I tweet about the Portland Timbers)
Agenda
Containers are NOT VMs
Working with Docker (Build, Ship, Run)
But Why?
Getting started
Q & A
Containers are not VMs
5
Docker containers are NOT VMs
• Easy connection to make
• Fundamentally different architectures
• Fundamentally different benefits
6
VMs
7
Containers
Docker + Windows Server = Windows Containers
Native Windows containers powered
by Docker Engine
Windows kernel engineered with
new primitives to support containers
Deep integration with 2+ years of
engineering collaboration in Docker
Engine and Windows Server
Microsoft is top 5 Docker open
source project contributor and a
Docker maintainer
Infrastructure
Windows Server 2016
Bins/Libs
App
Docker Engine
Bins/Libs
App
Bins/Libs
App
9
They’re different, not mutually exclusive
Variables to Consider
• Performance
• Security
• Scalability
• Existing Skillsets
• Costs
• Etc.
http://people-equation.com/do-your-words-encourage-or-deflate/math-equation_chalkboard/
11
Container Consolidation Testing
• Testing done by HPE, Docker and Industry Consultant
• Components:
− Docker CS Engine 1.12.3
− VMware ESXi 6
− SysBench 1.0 (Nov 2016)
− RHEL 7.2
− HPE ProLiant DL360 Gen 9 servers with HPE 3PAR StorServ 8200 SSD
Storage
How can containers help organizations optimize hardware
utilization?
12
Testing Scenarios
Measure SysBench performance across 3 configurations
Need to replace this graphic w/
the one w/ 8 boxes
Scenario 1:
8 VMs
Scenario 2:
1 VM w/ 8 Containers
Scenario 3:
8 Containers on Bare Metal
13
Results
Moving from VMs to containers increases performance 27% to 46%
Results are after VM and Container Tuning
14
Additional Savings
Docker allowed for savings in memory and disk as well
15
Key Learnings
Plan for Higher Density
Bare Metal or Bigger VMs
Tune To Optimize
Docker containers increase performance and flexiblity
2
1
3
Docker 101 describing basic docker usage
Build, Ship, and Run
18
Put it all together: Build, Ship, Run Workflow
Developers IT Operations
BUILD
Development Environments
SHIP
Create & Store Images
RUN
Deploy, Manage, Scale
Docker Engine
Load
Balancing
Certificate
Authority
Networking
Service
Discovery
TLS
Swarm Mode
Manager
Swarm Mode
Worker
Orchestration Components
Volumes
Plugins
Distributed
store
Container
Runtime
The building block: Docker Engine 1.12
• Powerful yet simple, built in
orchestration
• Declarative app services
• Built in container centric
networking
• Built in default security
• Extensible with plugins, drivers
and open APIs
Built in orchestration with scheduling, networking and scheduling
Docker Universal Control Plane
Integrated
Security
Docker Engine
Container runtime, orchestration, networking, volumes, plugins
Docker Trusted Registry
Operating
Systems Config Mgt Monitoring Logging
CI/CD ..more..
Images Networking Volumes
Virtualization
Public Cloud Physical
Docker Datacenter platform
Docker Datacenter
Docker Datacenter Architecture
UCP Manager UCP Manager
UCP Manager
Internal distributed store
Raft consensus group
BYO TCP Load Balancer
Docker Datacenter Architecture
UCP Worker UCP Worker
UCP Worker
UCP Worker
Admin / User
Deploy / manage
UCP Manager UCP Manager
UCP Manager
Internal distributed store
Raft consensus group
BYO TCP Load Balancer
Docker Datacenter Architecture
UCP Worker UCP Worker
UCP Worker
UCP Worker
Admin / User
Deploy / manage
UCP Manager UCP Manager
UCP Manager
Internal distributed store
Raft consensus group
BYO TCP Load Balancer
DTR Replica
Worker
Image Registry
BYO TCP Load Balancer
DTR Replica
Worker
DTR Replica
Worker
push / pull
LDAP/AD
Monitoring
Logging
External CA
Image
Storage
24
Some Docker vocabulary
Docker Image
The basis of a Docker container. Represents a full application
Docker Container
The standard unit in which the application service resides and executes
Docker Engine
Creates, ships and runs Docker containers deployable on a physical or
virtual, host locally, in a datacenter or cloud service provider
Registry Service (Docker Hub or Docker Trusted Registry)
Cloud or server based storage and distribution service for your images
Basic Docker Commands
$ docker pull mikegcoleman/catweb:1.0
$ docker images
$ docker run –d –p 5000:5000 –-name catweb mikegcoleman/catweb:latest
$ docker ps
$ docker stop catweb (or <container id>)
$ docker rm catweb (or <container id>)
$ docker rmi mikegcoleman/catweb:latest (or <image id>)
$ docker build –t mikegcoleman/catweb:2.0 .
$ docker push mikegcoleman/catweb:2.0
26
Dockerfile – Linux Example
• Instructions on
how to build a
Docker image
• Looks very similar
to “native”
commands
• Important to
optimize your
Dockerfile
Dockerfile – Windows Example
Demo
Build, Ship, and Run
But Why?
Enterprises are looking to Docker for critical
transformations
80%
Docker is central to
cloud strategy
Docker Survey: State of App development : Q1 - 2016
3 out 4
Top initiatives revolve
around applications
44%
Looking to adopt DevOps
App
Modernization
DevOps
Cloud
State of App development Survey: Q1 2016
37
Docker delivers speed, flexibility and savings
+ +
Agility Portability Control
State of App development Survey: Q1 2016, Cornell University case study
13X
More software releases
62%
Report reduction in MTTR
10X
Cost reduction in maintaining
existing applications
Eliminate
“works on my machine”
issues
41%
Move workloads across
private/public clouds
65%
Reduction in developer
onboarding time
One platform delivers one journey for all applications
1 Containerize Legacy Applications
Lift and shift for portability and efficiency
2
3
Transform Legacy to Microservices
Look for shared services to transform
Accelerate New Applications
Greenfield innovation
Docker Universal Control Plane
Integrated Security
Docker Engine
Docker Trusted Registry
Config Mgt Monitoring Logging
CI/CD ..more..
Images Networking Volumes
Virtual Public Cloud
Containers in production with Docker
Datacenter
• Enterprise container
orchestration, management
and security for dev and ops
• Available today for Linux
environments
• Q4 2016 beta for Windows
environments
Physical
Getting Started
41
Docker on Linux
• Create a Linux VM (or use physical), and install Docker
−Requires kernel 3.10
• Stable builds
−curl –sSL https://get.docker.com/ | sh
• Test and experimental builds
−curl –sSL https://test.docker.com/ | sh
−curl –sSL https://experimental.docker.com/ | sh
• Can also manually install (see docs)
Docker for Windows / Mac
• Currently in public beta
• Easy to install: Get up and running on Docker in minutes
• Leverages Hyper-V (Windows) or xhyv (Mac)
− Docker for Windows requires Windows Pro 10, Enterprise, or Education
• Full API / CLI compatibility
• OS integration for increased stability and speed
Docker for Azure / AWS
• Currently in public beta
− https://beta.docker.com/
• Easily deploy Docker 1.12 Swarm clusters (Linux)
• Scale up and down easily
• Integrate with underlying platform (i.e. load balancers)
Walk, Jog, Run
Walk:
• Setup your preferred Docker environment
• Fire up some prebuilt images (nginx, hello-world, mikegcoleman/catweb)
Jog:
• Pick a well documented solution (Wordpress, Jenkins, etc)
• Build it for yourself (blogs are your friend)
Run:
• Extend one your Walk solution or Dockerize an existing project
• Build your own Dockerfiles
• Experiment with Docker Compose and Swarm Mode
Hands-on Labs
http://github.com/docker/labs
Thank You.
Questions?
Docker 101 describing basic docker usage

More Related Content

PPTX
Docker
PPTX
Docker 101 - Nov 2016
PPTX
Introduction to docker
PPTX
Webinar : Docker in Production
PPTX
ma-formation-en-Docker-jlklk,nknkjn.pptx
PPTX
Devoxx 2016 - Docker Nuts and Bolts
PDF
Docker Introduction
PDF
DCEU 18: Building Your Development Pipeline
Docker
Docker 101 - Nov 2016
Introduction to docker
Webinar : Docker in Production
ma-formation-en-Docker-jlklk,nknkjn.pptx
Devoxx 2016 - Docker Nuts and Bolts
Docker Introduction
DCEU 18: Building Your Development Pipeline

Similar to Docker 101 describing basic docker usage (20)

PPTX
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
PPTX
docker : how to deploy Digital Experience in a container drinking a cup of co...
PDF
Dockerizing OpenStack for High Availability
PPTX
.docker : How to deploy Digital Experience in a container, drinking a cup of ...
PPTX
DockerCon EU 2015 Barcelona
PPTX
.docker : how to deploy Digital Experience in a container drinking a cup of c...
PDF
A curtain-raiser to the container world Docker & Kubernetes
PPTX
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
PDF
Docker Birthday #3 Slides - Overview
PDF
Docker Birthday #3 - Intro to Docker Slides
PDF
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...
PDF
Faster and Easier Software Development using Docker Platform
PDF
Webinar: From Development to Production with Docker and MongoDB
PPTX
Docker Overview - AWS Tech Connect - Seattle 10/28
PDF
Introduction to Docker - Vellore Institute of Technology
PDF
Introduction to Docker - VIT Campus
PDF
What is Docker | Docker Tutorial for Beginners | Docker Container | DevOps To...
PDF
Getting Started With Docker | Docker Tutorial | Docker Training | Edureka
PDF
Dockercon eu tour 2015 - Devoxx Casablanca
PPTX
Container on azure
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
docker : how to deploy Digital Experience in a container drinking a cup of co...
Dockerizing OpenStack for High Availability
.docker : How to deploy Digital Experience in a container, drinking a cup of ...
DockerCon EU 2015 Barcelona
.docker : how to deploy Digital Experience in a container drinking a cup of c...
A curtain-raiser to the container world Docker & Kubernetes
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker Birthday #3 Slides - Overview
Docker Birthday #3 - Intro to Docker Slides
Evénement Docker Paris: Anticipez les nouveaux business model et réduisez vos...
Faster and Easier Software Development using Docker Platform
Webinar: From Development to Production with Docker and MongoDB
Docker Overview - AWS Tech Connect - Seattle 10/28
Introduction to Docker - Vellore Institute of Technology
Introduction to Docker - VIT Campus
What is Docker | Docker Tutorial for Beginners | Docker Container | DevOps To...
Getting Started With Docker | Docker Tutorial | Docker Training | Edureka
Dockercon eu tour 2015 - Devoxx Casablanca
Container on azure
Ad

Recently uploaded (20)

PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PPTX
Big Data Technologies - Introduction.pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Electronic commerce courselecture one. Pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Approach and Philosophy of On baking technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
cuic standard and advanced reporting.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
NewMind AI Weekly Chronicles - August'25 Week I
20250228 LYD VKU AI Blended-Learning.pptx
Chapter 3 Spatial Domain Image Processing.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Big Data Technologies - Introduction.pptx
Encapsulation_ Review paper, used for researhc scholars
Electronic commerce courselecture one. Pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Spectral efficient network and resource selection model in 5G networks
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Mobile App Security Testing_ A Comprehensive Guide.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Per capita expenditure prediction using model stacking based on satellite ima...
Approach and Philosophy of On baking technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
cuic standard and advanced reporting.pdf
Ad

Docker 101 describing basic docker usage

  • 1. Docker 101 Mike Coleman – Technology Evangelist, Docker @mikegcoleman
  • 2. 2 Who Am I? • Technology evangelist at Docker • 1st half of my career was in IT Networking admin • 2nd half of my career has been in product management marketing for Docker, Puppet Labs, VMware, and Microsoft. • Definitely more IT pro than developer • @mikegcoleman (but mostly I tweet about the Portland Timbers)
  • 3. Agenda Containers are NOT VMs Working with Docker (Build, Ship, Run) But Why? Getting started Q & A
  • 5. 5 Docker containers are NOT VMs • Easy connection to make • Fundamentally different architectures • Fundamentally different benefits
  • 8. Docker + Windows Server = Windows Containers Native Windows containers powered by Docker Engine Windows kernel engineered with new primitives to support containers Deep integration with 2+ years of engineering collaboration in Docker Engine and Windows Server Microsoft is top 5 Docker open source project contributor and a Docker maintainer Infrastructure Windows Server 2016 Bins/Libs App Docker Engine Bins/Libs App Bins/Libs App
  • 9. 9 They’re different, not mutually exclusive
  • 10. Variables to Consider • Performance • Security • Scalability • Existing Skillsets • Costs • Etc. http://people-equation.com/do-your-words-encourage-or-deflate/math-equation_chalkboard/
  • 11. 11 Container Consolidation Testing • Testing done by HPE, Docker and Industry Consultant • Components: − Docker CS Engine 1.12.3 − VMware ESXi 6 − SysBench 1.0 (Nov 2016) − RHEL 7.2 − HPE ProLiant DL360 Gen 9 servers with HPE 3PAR StorServ 8200 SSD Storage How can containers help organizations optimize hardware utilization?
  • 12. 12 Testing Scenarios Measure SysBench performance across 3 configurations Need to replace this graphic w/ the one w/ 8 boxes Scenario 1: 8 VMs Scenario 2: 1 VM w/ 8 Containers Scenario 3: 8 Containers on Bare Metal
  • 13. 13 Results Moving from VMs to containers increases performance 27% to 46% Results are after VM and Container Tuning
  • 14. 14 Additional Savings Docker allowed for savings in memory and disk as well
  • 15. 15 Key Learnings Plan for Higher Density Bare Metal or Bigger VMs Tune To Optimize Docker containers increase performance and flexiblity 2 1 3
  • 18. 18 Put it all together: Build, Ship, Run Workflow Developers IT Operations BUILD Development Environments SHIP Create & Store Images RUN Deploy, Manage, Scale
  • 19. Docker Engine Load Balancing Certificate Authority Networking Service Discovery TLS Swarm Mode Manager Swarm Mode Worker Orchestration Components Volumes Plugins Distributed store Container Runtime The building block: Docker Engine 1.12 • Powerful yet simple, built in orchestration • Declarative app services • Built in container centric networking • Built in default security • Extensible with plugins, drivers and open APIs Built in orchestration with scheduling, networking and scheduling
  • 20. Docker Universal Control Plane Integrated Security Docker Engine Container runtime, orchestration, networking, volumes, plugins Docker Trusted Registry Operating Systems Config Mgt Monitoring Logging CI/CD ..more.. Images Networking Volumes Virtualization Public Cloud Physical Docker Datacenter platform Docker Datacenter
  • 21. Docker Datacenter Architecture UCP Manager UCP Manager UCP Manager Internal distributed store Raft consensus group BYO TCP Load Balancer
  • 22. Docker Datacenter Architecture UCP Worker UCP Worker UCP Worker UCP Worker Admin / User Deploy / manage UCP Manager UCP Manager UCP Manager Internal distributed store Raft consensus group BYO TCP Load Balancer
  • 23. Docker Datacenter Architecture UCP Worker UCP Worker UCP Worker UCP Worker Admin / User Deploy / manage UCP Manager UCP Manager UCP Manager Internal distributed store Raft consensus group BYO TCP Load Balancer DTR Replica Worker Image Registry BYO TCP Load Balancer DTR Replica Worker DTR Replica Worker push / pull LDAP/AD Monitoring Logging External CA Image Storage
  • 24. 24 Some Docker vocabulary Docker Image The basis of a Docker container. Represents a full application Docker Container The standard unit in which the application service resides and executes Docker Engine Creates, ships and runs Docker containers deployable on a physical or virtual, host locally, in a datacenter or cloud service provider Registry Service (Docker Hub or Docker Trusted Registry) Cloud or server based storage and distribution service for your images
  • 25. Basic Docker Commands $ docker pull mikegcoleman/catweb:1.0 $ docker images $ docker run –d –p 5000:5000 –-name catweb mikegcoleman/catweb:latest $ docker ps $ docker stop catweb (or <container id>) $ docker rm catweb (or <container id>) $ docker rmi mikegcoleman/catweb:latest (or <image id>) $ docker build –t mikegcoleman/catweb:2.0 . $ docker push mikegcoleman/catweb:2.0
  • 26. 26 Dockerfile – Linux Example • Instructions on how to build a Docker image • Looks very similar to “native” commands • Important to optimize your Dockerfile
  • 30. Enterprises are looking to Docker for critical transformations 80% Docker is central to cloud strategy Docker Survey: State of App development : Q1 - 2016 3 out 4 Top initiatives revolve around applications 44% Looking to adopt DevOps App Modernization DevOps Cloud State of App development Survey: Q1 2016
  • 31. 37 Docker delivers speed, flexibility and savings + + Agility Portability Control State of App development Survey: Q1 2016, Cornell University case study 13X More software releases 62% Report reduction in MTTR 10X Cost reduction in maintaining existing applications Eliminate “works on my machine” issues 41% Move workloads across private/public clouds 65% Reduction in developer onboarding time
  • 32. One platform delivers one journey for all applications 1 Containerize Legacy Applications Lift and shift for portability and efficiency 2 3 Transform Legacy to Microservices Look for shared services to transform Accelerate New Applications Greenfield innovation
  • 33. Docker Universal Control Plane Integrated Security Docker Engine Docker Trusted Registry Config Mgt Monitoring Logging CI/CD ..more.. Images Networking Volumes Virtual Public Cloud Containers in production with Docker Datacenter • Enterprise container orchestration, management and security for dev and ops • Available today for Linux environments • Q4 2016 beta for Windows environments Physical
  • 35. 41 Docker on Linux • Create a Linux VM (or use physical), and install Docker −Requires kernel 3.10 • Stable builds −curl –sSL https://get.docker.com/ | sh • Test and experimental builds −curl –sSL https://test.docker.com/ | sh −curl –sSL https://experimental.docker.com/ | sh • Can also manually install (see docs)
  • 36. Docker for Windows / Mac • Currently in public beta • Easy to install: Get up and running on Docker in minutes • Leverages Hyper-V (Windows) or xhyv (Mac) − Docker for Windows requires Windows Pro 10, Enterprise, or Education • Full API / CLI compatibility • OS integration for increased stability and speed
  • 37. Docker for Azure / AWS • Currently in public beta − https://beta.docker.com/ • Easily deploy Docker 1.12 Swarm clusters (Linux) • Scale up and down easily • Integrate with underlying platform (i.e. load balancers)
  • 38. Walk, Jog, Run Walk: • Setup your preferred Docker environment • Fire up some prebuilt images (nginx, hello-world, mikegcoleman/catweb) Jog: • Pick a well documented solution (Wordpress, Jenkins, etc) • Build it for yourself (blogs are your friend) Run: • Extend one your Walk solution or Dockerize an existing project • Build your own Dockerfiles • Experiment with Docker Compose and Swarm Mode