Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Docker Birthday #3 2016

Docker Birthday #3 2016

ProdOps

May 08, 2016
Tweet

More Decks by ProdOps

Other Decks in Technology

Transcript

  1. • 100+ Docker Birthday events list available at docker.party •

    5000+ RSVPs • 500+ mentors Docker Birthday #3
  2. “Between 12:00 AM and 11:59 PM on April 25, 2013,

    Quora released new versions of the site 46 times. This was a normal day for us.” - Quora engineering.quora.com/Continuous-Deployment-at-Quora “Deployment every 11.6s, 1,079 max in one hour. 10,000 mean number of hosts per deployment, with 30,000 maximum” - Amazon. com youtube.com/watch?v=PW1lhU8n5So “On the Google Consumer Surveys team, 8 minutes after you commit code it's live in production.” - Google developers.google.com/live/shows/772717729 “10+ deploys per day.” - John Allspaw, 2009 youtube.com/watch?v=LdOe18KhtT4
  3. 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 The Docker Project Docker Inc
  4. 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 Security Monitoring & Logging
  5. 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.
  6. 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
  7. Applications are changing Loosely Coupled Services Many Small Servers ~2000

    Today Monolithic Big Servers Slow changing Rapidly updated
  8. static website user data web frontend queue analytics development environments

    customer data center public cloud production cluster Challenge ?
  9. Solution: Docker containers • 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
  10. so, why containers? STANDARDIZATION … facilitate commoditization of formerly custom

    processes and help maximize compatibility, interoperability, safety, repeatability, and quality. - wikipedia
  11. Why 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
  12. Why 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
  13. docker host docker registry docker image static website user data

    web frontend 3. execution 2. distribution 1. packaging
  14. Docker in 2016 A Containers as a Service (CaaS) platform

    which enables IT Ops managed and secure application environment (infrastructure and content) for developer self service to build and deploy applications.
  15. Docker Containers as a Service Platform 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
  16. Containers as a Service (CaaS) Developers IT Operations BUILD Development

    Environments SHIP Secure Content & Collaboration RUN Deploy, Manage, Scale
  17. What's in the toolbox: • Docker Client • Docker Machine

    • Docker Compose • Docker Kitematic • VirtualBox
  18. 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 which shows the results of the voting in real timedocker-toolbox 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.