Introduction to docker
-
Upload
john-willis -
Category
Software
-
view
564 -
download
4
Transcript of Introduction to docker
Introduction to Docker
@botchagalupe
• a.k.a. John Willis
• 35 Years in IT Operations
• Exxon, Canonical, Chef, Enstratius, Socketplane
• Devopsdays Core Organizer
Agenda• Part 1 (Overview)!
• Why Docker?!
• Docker Platform!
• Docker Solutions!
• Part 2 (Docker and Devops)!
• Part 3 (Demos)!
• Docker Installation!
• Docker (Basic Image) Workflow!
• Docker (Build) Workflow!
• Docker (Volumes) Workflow!
• Docker Networking
Docker Blog
Why Docker?• Isolation
• Lightweight
• Simplicity
• Workflow
• Community
Killer Apps
• Local Application Development and Test
• CI/CD
• Containers as a Service
• Build your own Pass
Docker Community• 21,500+ GitHub stars
• 400M+ Docker Engine downloads
• 100,000+ "Dockerized" applications in the Docker Hub Registry
• 180+ Docker Meetup Groups in 50 countries
• 150,000 live apps are running off Docker
• 930+ community contributors
• 3 to 4 Million - Developers using Docker
• 50,000 third-party projects on GitHub using Docker as well as partnerships spanning PaaS, operating systems, hosting services, CI platforms, and more.
• Over 100 user-generated case studies available from companies such as eBay, Rackspace, New Relic, Gilt, Spotify, Cloudflare, Yandex, Cambridge Healthcare, Yelp and RelatelQ.
Docker Engine
• Docker Daemon
• Docker CLI
Docker Daemon
• Builds Images
• Runs and Manages Containers
• RESTful API
Docker CLI• docker build # Build an image from a Dockerfile
• docker images # List all images on a Docker host
• docker run # Run an image
• docker ps # List all running and stopped instances
• docker stop # Stop a running instances
• docker rm # Remove an instance
• docker rmi # Remove an image
Docker Architecture
Docker Platform Workflow (Volumes)
Docker Hub• Provides Docker Services
• Library of public images
• Storage for your images
• free for public images
• cost for private images
• Automated builds(link github/bitbucket repo; trigger build on commit)
Docker Hub
Docker Solutions• Docker Compose
• Docker Machine
• Docker Swarm
• Kitematic
• Docker Networking
• Docker Trusted Registry
Docker Compose
Docker Machine
• Install Docker on a Host
• Starting, stopping, restarting the Docker Engine
• Upgrading Docker on a Host
• Configuring the Docker client to talk to your host (TLS)
Docker Swarm
• Discovery Services
• Advanced Scheduling
• API
Docker Networking
Docker Networking
“We'll do for Networking, What Docker did for Compute.”
Docker Networking• Make “network” & “service” as top-level objects
!
• Provide a pluggable networking stack
!
• Span networks across multiple hosts
!
• Support multiple platforms
Container Network Model (CNM)• Endpoint
!
• Network
!
• Sandbox
Libnetwork
• Open Sourced in April
!
• Over 200 Pull Requests
!
• Over 200 GitHub Stars
!
• Windows and FreeBSD ports in progress
Part 2
Docker and Devops
Docker and Devops
Docker and Devops
• Velocity
• Variation
• Visualization
Part 3
Docker Installation
Docker Installation
Docker Installation
Demo
Docker Run Commands
Docker Platform Workflow (Build Images)
• Build a Local Image
• Run an Image on Docker Host
Demo
Docker Build
Docker Platform Workflow (Volumes)
• Using Volumes
• Mounting Docker Host Volumes
Docker Platform Workflow (Volumes)
Demo
Docker Volumes
Docker Networking
Docker Networking
Docker Networking
Docker Networking
Docker Networking
Docker Networking• Weave
• Flannel
• Calico
• Triton
• Socketplane
Docker Networking
Docker Networking• Container Network Model (or CNM)
• Notion of a Default Network
• Default Multi-Host Data-path for CNM
• Network API
• Docker Network CLI
ReferencesWHY I LOVE DOCKER… AND WHY YOU’LL LOVE IT TOO!https://blog.docker.com/2015/03/why-i-love-docker-and-why-youll-love-it-too/!!DOCKER TUTORIAL 1 – INSTALLING DOCKER!https://blog.docker.com/2015/03/docker-tutorial-1-installing-docker/!!DOCKER TUTORIAL 2 – DOCKER RUN COMMAND BASICS!https://blog.docker.com/2015/03/docker-tutorial-2-docker-run-command-basics/!!DOCKER TUTORIAL 3 – FUN WITH VOLUMES!https://blog.docker.com/2015/04/docker-tutorial-3-fun-with-volumes/!!DOCKER TUTORIAL 4 – MORE RUN WITH A COUPLE OF EXTRA GOODIES!https://blog.docker.com/2015/04/docker-tutorial-4-more-run-with-a-couple-of-extra-goodies/!!DOCKER TUTORIAL 6 – DOCKERFILE (PART 1)!https://blog.docker.com/2015/04/docker-tutorial-6-dockerfile-part-1/!!DOCKER TUTORIAL 7 – DOCKERFILE (PART 2)!https://blog.docker.com/2015/04/docker-tutorial-7-dockerfile-part-2/
[email protected] @botchagalupe