KEMBAR78
Docker Birthday #3 - Intro to Docker Slides | PDF
Docker
Birthday
#3
Welcome to Docker Birthday #3
● 120 Docker Birthday events (list available at Docker.Party)
● 7000+ RSVPs
● 600 mentors
● Big thanks to our global partners:
2
Remember to tweet photos with #dockerbday
3
Agenda
1. Introduction to the Docker Ecosystem
2. Learning Docker with Birthday App Training
3. Birthday App Challenge
4. Cake and Socializing
Introduction to the Docker Ecosystem
6
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
Who Are We
The Docker Project Docker Inc
The Docker ecosystem
Dev Tools
Official Repositories
Operating Systems
Big Data
Service Discovery
Build / Continuous Integration
Configuration Management
Consulting &Training
Management
Storage
Clustering & Scheduling
Networking
Infrastructure & Service Providers
Storage
Security
Monitoring & Logging
7
Diversity Scholarship Program
The purpose of the DockerCon Diversity Scholarship Program is to give members of
underrepresented groups the opportunity to attend DockerCon without the barrier of financial strain.
How to apply:
Step 1: Complete the Docker Birthday #3 training
Step 2: Fill out the online application
What does the scholarship include?
● Full DockerCon Conference Pass
● Round-trip airfare + hotel accommodations for 3 nights
● 1:1 mentorship session with a Docker employee
Application Deadline: April 15, 2016 at 5:00PM PST
For more information and to apply, visit our website: dockercon.com/scholarship
How did we get there ?
Docker in 2013
A lightweight runtime and robust tooling to build and run virtual containers on Linux
to create the operating environment for your distributed applications.
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
On-premises registry for image storing and collaboration
Applications are changing
12
Loosely
Coupled
Services
Many Small
Servers
~2000 Today
Monolithic
Big Servers
Slow
changing
Rapidly
updated
The challenge: new matrix from hell
13
Virtual machines
Server
Public Cloud
Disaster Recovery
Developer Laptop
Server Cluster
Data Center
Static
Website
Web Front EndBackground
Workers
User DB
Analytics
DB
Queue API
Endpoint
Development Test & QA Production Scale Out
Solution: Docker containers
14
• 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
Solution: Docker containers
15
Static
Website
Web
Front End
Background
Workers
User DB
Analytics
DB
Queue
API
Endpoint
Why do Developers Care?
• Build once…(finally) run anywhere
• A clean, safe, hygienic and portable runtime environment for your app.
• No worries about missing dependencies, packages and other pain points during subsequent
deployments.
• Run each app in its own isolated container, so you can run various versions of libraries and
other dependencies for each app without worrying
• 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? A VM without the overhead of a VM?
Instant replay and reset of image snapshots? That’s the power of 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
Containers vs. VMs
Docker in 2016
A Containers as a Service (CaaS) platform which enables an IT Ops
managed and secure application environment (infrastructure and content)
for developer self service to build and deploy applications
Docker Containers as a Service Platform
20
Source Code
Management
CI / CD
Networking
Monitoring
Volumes
Service
Discovery
Operating Systems
Content
Configuration
Management
Infrastructure
Public Cloud Virtualization
Physical / Converged
Infrastructure
Logging
Storage
Toolbox
Management
Security
Orchestration
Container Runtime
Registry Service
Containers as a Service (CaaS)
Developers IT Operations
BUILD
Development Environments
SHIP
Secure Content & Collaboration
RUN
Deploy, Manage, Scale
Docker CaaS Solutions
22
Docker Datacenter
An on-premises / VPC
CaaS platform that
integrates with enterprise
infrastructure to build, ship
and run distributed
applications anywhere.
Docker Cloud
A SaaS CaaS service to
build, ship and run
distributed applications
anywhere
Enabling the needs of developers and IT
23
Manage and
secure at scale
Frictionless
movement
Innovation
at speed
+ +Agility Portability Control
Use cases enabled by Docker CaaS
24
Containerization
Microservices
CI/CD
DevOps
Self Service
Cloud DataApps
Cloud Migration
Hybrid Cloud
Multi-Cloud
Data Processing
Pipelines
25
Birthday App Training
Docker Toolbox
Everything you need to get started
with Docker
• Toolbox includes:
– Kitematic
– Docker CLI
– Docker Machine
– Docker Swarm
– Docker Compose
26
Birthday App Training
Participants in the training will go through the steps involved in running and developing a simple voting app
from a fresh computer using Docker Toolbox. This simple app will include:
● A Python webapp which lets you vote between several options
● A Redis queue which collects new votes
● A Java worker which consumes votes and stores them in…
● …A Postgres database backed by a Docker volume
● A Node.js webapp showing the results of the voting in real time
All training materials available at: https://github.com/docker/docker-birthday-3
There is a self-paced beginners’ tutorial for attendees to learn Docker basics as they build and deploy this
app locally and push their Docker images to Docker Hub. Experienced Docker users will serve as mentors
to help beginners successfully complete the training.
Birthday App Challenge
Birthday App Challenge Ideas
For Devs
● Rewrite or add features to the following apps:
○ Python webapp which lets you vote between two options
○ Java worker which consumes votes and stores them
○ Node.js webapp which shows the results of the voting in real time
● Write something to generate random votes so they can load test their app
For Ops
● Bring Docker Swarm in the mix
● Add Interlock: https://github.com/ehazlett/interlock
● Scale out the worker nodes using Docker Cloud
Birthday App Challenge Submission & Prizes
Submission guidelines:
● We are looking for cool hacks based on what you learned today! Be creative, make sure
it’s useful and most importantly, have fun!
● Submit at: http://bit.ly/1TLpxuK and submit your PR at github.com/docker/docker-
birthday-3 by Monday, March 28th 9am PST.
Prizes:
● Best hack wins a very special Docker Swag package and complimentary pass to
DockerCon 2016!
● 2nd and 3rd favorite hacks win an awesome Docker hoodie.
● All of these hacks will be featured in a blog post on blog.docker.com.
31
Let’s get started with this Docker
Training!
https://github.com/docker/docker-birthday-3/

Docker Birthday #3 - Intro to Docker Slides

  • 1.
  • 2.
    Welcome to DockerBirthday #3 ● 120 Docker Birthday events (list available at Docker.Party) ● 7000+ RSVPs ● 600 mentors ● Big thanks to our global partners: 2
  • 3.
    Remember to tweetphotos with #dockerbday 3
  • 4.
    Agenda 1. Introduction tothe Docker Ecosystem 2. Learning Docker with Birthday App Training 3. Birthday App Challenge 4. Cake and Socializing
  • 5.
    Introduction to theDocker Ecosystem
  • 6.
    6 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 Who Are We The Docker Project Docker Inc
  • 7.
    The Docker ecosystem DevTools Official Repositories Operating Systems Big Data Service Discovery Build / Continuous Integration Configuration Management Consulting &Training Management Storage Clustering & Scheduling Networking Infrastructure & Service Providers Storage Security Monitoring & Logging 7
  • 8.
    Diversity Scholarship Program Thepurpose of the DockerCon Diversity Scholarship Program is to give members of underrepresented groups the opportunity to attend DockerCon without the barrier of financial strain. How to apply: Step 1: Complete the Docker Birthday #3 training Step 2: Fill out the online application What does the scholarship include? ● Full DockerCon Conference Pass ● Round-trip airfare + hotel accommodations for 3 nights ● 1:1 mentorship session with a Docker employee Application Deadline: April 15, 2016 at 5:00PM PST For more information and to apply, visit our website: dockercon.com/scholarship
  • 9.
    How did weget there ?
  • 10.
    Docker in 2013 Alightweight runtime and robust tooling to build and run virtual containers on Linux to create the operating environment for your distributed applications.
  • 11.
    Docker Basics Docker Image Thebasis 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 On-premises registry for image storing and collaboration
  • 12.
    Applications are changing 12 Loosely Coupled Services ManySmall Servers ~2000 Today Monolithic Big Servers Slow changing Rapidly updated
  • 13.
    The challenge: newmatrix from hell 13 Virtual machines Server Public Cloud Disaster Recovery Developer Laptop Server Cluster Data Center Static Website Web Front EndBackground Workers User DB Analytics DB Queue API Endpoint Development Test & QA Production Scale Out
  • 14.
    Solution: Docker containers 14 •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
  • 15.
    Solution: Docker containers 15 Static Website Web FrontEnd Background Workers User DB Analytics DB Queue API Endpoint
  • 16.
    Why do DevelopersCare? • Build once…(finally) run anywhere • A clean, safe, hygienic and portable runtime environment for your app. • No worries about missing dependencies, packages and other pain points during subsequent deployments. • Run each app in its own isolated container, so you can run various versions of libraries and other dependencies for each app without worrying • 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? A VM without the overhead of a VM? Instant replay and reset of image snapshots? That’s the power of Docker
  • 17.
    Why do OpsCare? •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
  • 18.
  • 19.
    Docker in 2016 AContainers as a Service (CaaS) platform which enables an IT Ops managed and secure application environment (infrastructure and content) for developer self service to build and deploy applications
  • 20.
    Docker Containers asa Service Platform 20 Source Code Management CI / CD Networking Monitoring Volumes Service Discovery Operating Systems Content Configuration Management Infrastructure Public Cloud Virtualization Physical / Converged Infrastructure Logging Storage Toolbox Management Security Orchestration Container Runtime Registry Service
  • 21.
    Containers as aService (CaaS) Developers IT Operations BUILD Development Environments SHIP Secure Content & Collaboration RUN Deploy, Manage, Scale
  • 22.
    Docker CaaS Solutions 22 DockerDatacenter An on-premises / VPC CaaS platform that integrates with enterprise infrastructure to build, ship and run distributed applications anywhere. Docker Cloud A SaaS CaaS service to build, ship and run distributed applications anywhere
  • 23.
    Enabling the needsof developers and IT 23 Manage and secure at scale Frictionless movement Innovation at speed + +Agility Portability Control
  • 24.
    Use cases enabledby Docker CaaS 24 Containerization Microservices CI/CD DevOps Self Service Cloud DataApps Cloud Migration Hybrid Cloud Multi-Cloud Data Processing Pipelines
  • 25.
  • 26.
    Docker Toolbox Everything youneed to get started with Docker • Toolbox includes: – Kitematic – Docker CLI – Docker Machine – Docker Swarm – Docker Compose 26
  • 27.
    Birthday App Training Participantsin the training will go through the steps involved in running and developing a simple voting app from a fresh computer using Docker Toolbox. This simple app will include: ● A Python webapp which lets you vote between several options ● A Redis queue which collects new votes ● A Java worker which consumes votes and stores them in… ● …A Postgres database backed by a Docker volume ● A Node.js webapp showing the results of the voting in real time All training materials available at: https://github.com/docker/docker-birthday-3 There is a self-paced beginners’ tutorial for attendees to learn Docker basics as they build and deploy this app locally and push their Docker images to Docker Hub. Experienced Docker users will serve as mentors to help beginners successfully complete the training.
  • 28.
  • 29.
    Birthday App ChallengeIdeas For Devs ● Rewrite or add features to the following apps: ○ Python webapp which lets you vote between two options ○ Java worker which consumes votes and stores them ○ Node.js webapp which shows the results of the voting in real time ● Write something to generate random votes so they can load test their app For Ops ● Bring Docker Swarm in the mix ● Add Interlock: https://github.com/ehazlett/interlock ● Scale out the worker nodes using Docker Cloud
  • 30.
    Birthday App ChallengeSubmission & Prizes Submission guidelines: ● We are looking for cool hacks based on what you learned today! Be creative, make sure it’s useful and most importantly, have fun! ● Submit at: http://bit.ly/1TLpxuK and submit your PR at github.com/docker/docker- birthday-3 by Monday, March 28th 9am PST. Prizes: ● Best hack wins a very special Docker Swag package and complimentary pass to DockerCon 2016! ● 2nd and 3rd favorite hacks win an awesome Docker hoodie. ● All of these hacks will be featured in a blog post on blog.docker.com.
  • 31.
    31 Let’s get startedwith this Docker Training! https://github.com/docker/docker-birthday-3/