Slide 1

Slide 1 text

Docker Birthday #3

Slide 2

Slide 2 text

● 100+ Docker Birthday events list available at docker.party ● 5000+ RSVPs ● 500+ mentors Docker Birthday #3

Slide 3

Slide 3 text

7 events in Israel during March 20-26

Slide 4

Slide 4 text

Agenda ● Introduction to the Docker Ecosystem ● Learning Docker with Birthday App Training

Slide 5

Slide 5 text

Introduction to Devops very very very short

Slide 6

Slide 6 text

Basic Web Application Architecture

Slide 7

Slide 7 text

awsofa.info (2012)

Slide 8

Slide 8 text

requests # of servers CPU aggregate techblog.netflix.com/2012/01/auto-scaling-in-amazon-cloud.html

Slide 9

Slide 9 text

“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

Slide 10

Slide 10 text

What & Who is Docker

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

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

Slide 13

Slide 13 text

What is Docker?

Slide 14

Slide 14 text

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.

Slide 15

Slide 15 text

Docker API host containers

Slide 16

Slide 16 text

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

Slide 17

Slide 17 text

Applications are changing Loosely Coupled Services Many Small Servers ~2000 Today Monolithic Big Servers Slow changing Rapidly updated

Slide 18

Slide 18 text

static website user data web frontend queue analytics development environments customer data center public cloud production cluster Challenge ?

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

Static Website Web Front End Background Workers User DB Analytics DB Queue API Endpoint

Slide 22

Slide 22 text

so, why containers? STANDARDIZATION … facilitate commoditization of formerly custom processes and help maximize compatibility, interoperability, safety, repeatability, and quality. - wikipedia

Slide 23

Slide 23 text

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

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

docker host docker registry docker image static website user data web frontend 3. execution 2. distribution 1. packaging

Slide 26

Slide 26 text

Containers vs. VMs

Slide 27

Slide 27 text

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.

Slide 28

Slide 28 text

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

Slide 29

Slide 29 text

Containers as a Service (CaaS) Developers IT Operations BUILD Development Environments SHIP Secure Content & Collaboration RUN Deploy, Manage, Scale

Slide 30

Slide 30 text

docker.com/community

Slide 31

Slide 31 text

meetup.com/docker-tel-aviv

Slide 32

Slide 32 text

Birthday App Training

Slide 33

Slide 33 text

www.docker.com/docker-toolbox

Slide 34

Slide 34 text

What's in the toolbox: ● Docker Client ● Docker Machine ● Docker Compose ● Docker Kitematic ● VirtualBox

Slide 35

Slide 35 text

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.

Slide 36

Slide 36 text

Let’s get started with this Docker Training! github.com/docker/docker-birthday-3/ click on tutorial.md

Slide 37

Slide 37 text

No content