SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Containers BoF
Bob Killen
ARC-TS
rkillen@umich.edu
@mrbobbytables
Jeffrey Sica
ARC-TS
jsica@umich.edu
@jeefy
In The Right Place?
Development
If you are a developer looking to
integrate containers into your
project(s) and lifecycle:
Michigan Room, Floor 2
Orchestration
If you are a sysadmin looking to host/
manage production-level container
applications:
Koessler Room, Floor 3
Containers
Uses a combination of Kernel “cgroups” and “namespaces” to create isolated
containers
Software to help define and manage containers
2000 - BSD Jails
2005 - Solaris Zones
2008 - LXC
2013 - LMCTFY (Google)
2013 - Docker (formerly dotCloud)
Containers
Why containers?
• Lightweight, executable piece of software that contains everything you need to
run it
• Code, system libraries and tools, environment, settings
• All software and processes are isolated from their surroundings
• Portable
• Typically used for single instance programs
Docker
• Build images that captures
applications requirements.
• Manually commit or use a
recipe file.
• Push an image to
DockerHub, a hosted
registry, or a private
Docker Registry.
• Share Images
• Use Docker Engine to
pull images down and
execute a container from
the image.
The Goal
The Goal
The Goal
Choose your path
Development
Docker
docker machine
docker-compose
Orchestration
Swarm
Kubernetes
Mesos
Development - docker
Startup out of California
Most active Github repo two years running.
Windows Containers exist. Docker and Microsoft are partners. Microsoft one of the
major contributors to their Github.
https://www.docker.com/
Development - docker
Docker fundamentally changes the way you think about development and code pushes
You don’t push code. You push your container.
Build. Ship. Run.
Think small. This is the mindset of microservices.
Development - docker
Docker fundamentally changes the way you think about development and code pushes
You don’t push code. You push your container.
Build. Ship. Run.
Think small. This is the mindset of microservices.
The smaller a component is, the faster its development is.
"I like putting apps into containers because
then I can pretend they're not my problem."
@sadoperator
Development - docker machine / environment
If on a Linux system: Congrats, docker installs natively*.
OSX / Windows? Use docker machine.
OSX development as seamless as Linux.
Windows has some subtle issues (Postgres problems)
Native windows containers? Separate install (windows only) that uses Hyper-V.
https://docs.docker.com/engine/installation/
Development - docker-compose
You have a container with your code. Great.
Now you want to connect multiple containers together to run your app (web + db)
Spin up an entire environment locally.
Development - docker-compose (Rails)
Docker - docker-compose (Wordpress)
Orchestration
Container Orchestration Engines (COE’s) aim to solve at a minimum the following:
● Scheduling / Container lifecycle Management
● Highly Available
● Application Health Checking
● Service Discovery
● Persistent Storage
Container Orchestration Engine Players
Swarm Kubernetes Mesos
Orchestration - Swarm
Docker Native Orchestration Engine
Released in November of 2015
Extends Docker-Compose and uses the same YAML DSL
By far the easiest to use and manage
Least functionality of the big players
https://docs.docker.com/engine/swarm/
Orchestration - Kubernetes
Kubernetes (k8s) - Ancient Greek for Helmsman
Released in June of 2014 as a next evolution of Google Borg
Most widely used Container Orchestration System
Massive Developer Backing
Velocity makes it hard to stay on top of.
https://kubernetes.io/
Orchestration - Mesos
Initially released in 2009 as PhD project out of Berkley
Is NOT natively a container scheduler. It provides a uniform way for a host to expose
resources so that it may be consumed by a scheduler.
Has tight integrations with quite a few Apache projects. (Hadoop, Spark, etc)
Proven to scale to 10,000+ nodes without issue.
https://mesos.apache.org/
Orchestration is hard to get right..

Contenu connexe

Tendances

Tendances (20)

Introduction to Docker - What is it and how is it compared to VM's
Introduction to Docker - What is it and how is it compared to VM'sIntroduction to Docker - What is it and how is it compared to VM's
Introduction to Docker - What is it and how is it compared to VM's
 
Windows Server and Docker - The Internals Behind Bringing Docker and Containe...
Windows Server and Docker - The Internals Behind Bringing Docker and Containe...Windows Server and Docker - The Internals Behind Bringing Docker and Containe...
Windows Server and Docker - The Internals Behind Bringing Docker and Containe...
 
Docker 101 Checonf 2016
Docker 101 Checonf 2016Docker 101 Checonf 2016
Docker 101 Checonf 2016
 
Docker architecture-04-1
Docker architecture-04-1Docker architecture-04-1
Docker architecture-04-1
 
Containerize All the (Multi-Platform) Things! by Phil Estes
Containerize All the (Multi-Platform) Things! by Phil EstesContainerize All the (Multi-Platform) Things! by Phil Estes
Containerize All the (Multi-Platform) Things! by Phil Estes
 
Unikernels and docker from revolution to evolution — unikernels and docker ...
Unikernels and docker  from revolution to evolution — unikernels and docker  ...Unikernels and docker  from revolution to evolution — unikernels and docker  ...
Unikernels and docker from revolution to evolution — unikernels and docker ...
 
Getting started with Docker
Getting started with DockerGetting started with Docker
Getting started with Docker
 
Docker 101 - High level introduction to docker
Docker 101 - High level introduction to dockerDocker 101 - High level introduction to docker
Docker 101 - High level introduction to docker
 
Introducción a contenedores Docker
Introducción a contenedores DockerIntroducción a contenedores Docker
Introducción a contenedores Docker
 
Docker multi-stage build
Docker multi-stage buildDocker multi-stage build
Docker multi-stage build
 
How to be successful running Docker in Production
How to be successful running Docker in ProductionHow to be successful running Docker in Production
How to be successful running Docker in Production
 
Containers and docker
Containers and dockerContainers and docker
Containers and docker
 
Persistent Data Storage for Docker Containers by Andre Moruga
Persistent Data Storage for Docker Containers by Andre MorugaPersistent Data Storage for Docker Containers by Andre Moruga
Persistent Data Storage for Docker Containers by Andre Moruga
 
Container Runtimes: Comparing and Contrasting Today's Engines
Container Runtimes: Comparing and Contrasting Today's EnginesContainer Runtimes: Comparing and Contrasting Today's Engines
Container Runtimes: Comparing and Contrasting Today's Engines
 
KubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to ProdKubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to Prod
 
Docker on Docker
Docker on DockerDocker on Docker
Docker on Docker
 
Devoxx 2016: A Developer's Guide to OCI and runC
Devoxx 2016: A Developer's Guide to OCI and runCDevoxx 2016: A Developer's Guide to OCI and runC
Devoxx 2016: A Developer's Guide to OCI and runC
 
Docker for the new Era: Introducing Docker,its components and tools
Docker for the new Era: Introducing Docker,its components and toolsDocker for the new Era: Introducing Docker,its components and tools
Docker for the new Era: Introducing Docker,its components and tools
 
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth RushgroveThe Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
 
ContainerDayVietnam2016: Django Development with Docker
ContainerDayVietnam2016: Django Development with DockerContainerDayVietnam2016: Django Development with Docker
ContainerDayVietnam2016: Django Development with Docker
 

Similaire à Michigan IT Symposium 2017 - Container BOF

Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
javaonfly
 
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM France Lab
 

Similaire à Michigan IT Symposium 2017 - Container BOF (20)

Docker.pptx
Docker.pptxDocker.pptx
Docker.pptx
 
Accelerate your development with Docker
Accelerate your development with DockerAccelerate your development with Docker
Accelerate your development with Docker
 
Accelerate your software development with Docker
Accelerate your software development with DockerAccelerate your software development with Docker
Accelerate your software development with Docker
 
Developer workflow with docker
Developer workflow with dockerDeveloper workflow with docker
Developer workflow with docker
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
 
Docker slides
Docker slidesDocker slides
Docker slides
 
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
 
Docker handons-workshop-for-charity
Docker handons-workshop-for-charityDocker handons-workshop-for-charity
Docker handons-workshop-for-charity
 
What is Docker?
What is Docker?What is Docker?
What is Docker?
 
Docker Oxford launch - Introduction to Docker
Docker Oxford launch - Introduction to DockerDocker Oxford launch - Introduction to Docker
Docker Oxford launch - Introduction to Docker
 
An introduction to contianers and Docker for PHP developers
An introduction to contianers and Docker for PHP developersAn introduction to contianers and Docker for PHP developers
An introduction to contianers and Docker for PHP developers
 
.docker : How to deploy Digital Experience in a container, drinking a cup of ...
.docker : How to deploy Digital Experience in a container, drinking a cup of ....docker : How to deploy Digital Experience in a container, drinking a cup of ...
.docker : How to deploy Digital Experience in a container, drinking a cup of ...
 
Docker
DockerDocker
Docker
 
OpenStack Summit
OpenStack SummitOpenStack Summit
OpenStack Summit
 
Docker Understanding, What is Docker? Why Docker? How do I containerize somet...
Docker Understanding, What is Docker? Why Docker? How do I containerize somet...Docker Understanding, What is Docker? Why Docker? How do I containerize somet...
Docker Understanding, What is Docker? Why Docker? How do I containerize somet...
 
Docker
DockerDocker
Docker
 
Docker - A curtain raiser to the Container world
Docker - A curtain raiser to the Container worldDocker - A curtain raiser to the Container world
Docker - A curtain raiser to the Container world
 
Introduction to Containers and Docker for PHP developers
Introduction to Containers and Docker for PHP developersIntroduction to Containers and Docker for PHP developers
Introduction to Containers and Docker for PHP developers
 
Introduction to Containers and Docker for PHP developers
Introduction to Containers and Docker for PHP developersIntroduction to Containers and Docker for PHP developers
Introduction to Containers and Docker for PHP developers
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetes
 

Dernier

Dernier (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Michigan IT Symposium 2017 - Container BOF

  • 2. In The Right Place? Development If you are a developer looking to integrate containers into your project(s) and lifecycle: Michigan Room, Floor 2 Orchestration If you are a sysadmin looking to host/ manage production-level container applications: Koessler Room, Floor 3
  • 3. Containers Uses a combination of Kernel “cgroups” and “namespaces” to create isolated containers Software to help define and manage containers 2000 - BSD Jails 2005 - Solaris Zones 2008 - LXC 2013 - LMCTFY (Google) 2013 - Docker (formerly dotCloud)
  • 5. Why containers? • Lightweight, executable piece of software that contains everything you need to run it • Code, system libraries and tools, environment, settings • All software and processes are isolated from their surroundings • Portable • Typically used for single instance programs
  • 6. Docker • Build images that captures applications requirements. • Manually commit or use a recipe file. • Push an image to DockerHub, a hosted registry, or a private Docker Registry. • Share Images • Use Docker Engine to pull images down and execute a container from the image.
  • 10. Choose your path Development Docker docker machine docker-compose Orchestration Swarm Kubernetes Mesos
  • 11. Development - docker Startup out of California Most active Github repo two years running. Windows Containers exist. Docker and Microsoft are partners. Microsoft one of the major contributors to their Github. https://www.docker.com/
  • 12. Development - docker Docker fundamentally changes the way you think about development and code pushes You don’t push code. You push your container. Build. Ship. Run. Think small. This is the mindset of microservices.
  • 13. Development - docker Docker fundamentally changes the way you think about development and code pushes You don’t push code. You push your container. Build. Ship. Run. Think small. This is the mindset of microservices. The smaller a component is, the faster its development is.
  • 14. "I like putting apps into containers because then I can pretend they're not my problem." @sadoperator
  • 15. Development - docker machine / environment If on a Linux system: Congrats, docker installs natively*. OSX / Windows? Use docker machine. OSX development as seamless as Linux. Windows has some subtle issues (Postgres problems) Native windows containers? Separate install (windows only) that uses Hyper-V. https://docs.docker.com/engine/installation/
  • 16. Development - docker-compose You have a container with your code. Great. Now you want to connect multiple containers together to run your app (web + db) Spin up an entire environment locally.
  • 18. Docker - docker-compose (Wordpress)
  • 19.
  • 20. Orchestration Container Orchestration Engines (COE’s) aim to solve at a minimum the following: ● Scheduling / Container lifecycle Management ● Highly Available ● Application Health Checking ● Service Discovery ● Persistent Storage
  • 21. Container Orchestration Engine Players Swarm Kubernetes Mesos
  • 22. Orchestration - Swarm Docker Native Orchestration Engine Released in November of 2015 Extends Docker-Compose and uses the same YAML DSL By far the easiest to use and manage Least functionality of the big players https://docs.docker.com/engine/swarm/
  • 23. Orchestration - Kubernetes Kubernetes (k8s) - Ancient Greek for Helmsman Released in June of 2014 as a next evolution of Google Borg Most widely used Container Orchestration System Massive Developer Backing Velocity makes it hard to stay on top of. https://kubernetes.io/
  • 24. Orchestration - Mesos Initially released in 2009 as PhD project out of Berkley Is NOT natively a container scheduler. It provides a uniform way for a host to expose resources so that it may be consumed by a scheduler. Has tight integrations with quite a few Apache projects. (Hadoop, Spark, etc) Proven to scale to 10,000+ nodes without issue. https://mesos.apache.org/
  • 25. Orchestration is hard to get right..