SlideShare a Scribd company logo
Docker 
Charles Anderson 
Hack Salem - November 2014
What is Docker? 
• An open platform for developing, 
shipping, and running applications 
• Linux-based 
• Why? Speed - ship code faster, 
including test and deployment 
• A solution to “works on my machine” 
Not!
One Word: Containers!
Containers 
• Containers are a lightweight 
virtualization technology 
• User-mode virtualization - not 
hardware virtualization 
• Benefits: density, speed, portability 
• Not new, and Docker isn’t the first
Peace, Love and 
Understanding 
• Devs and ops working 
together with a 
common tool 
• “The real value of 
Docker is not 
technology. It’s getting 
people to agree on 
something.” - Solomon 
Hykes, CTO Docker
What’s a Container? 
• An isolated environment to run user-mode code 
• Looks like you have the OS to yourself 
• An initial file system called an image 
• Minimal - a lot less than a full Linux distro 
• Very fast to start - less than a second 
• Network connections
Images 
• Start with a base - very minimal 
• Add packages using usual tools - e.g. apt, yum 
• Dockerfile is a recipe to build the image 
• Not needed at run-time
Dockerfile 
FROM ubuntu:12.10 
RUN apt-get update && apt-get install -y redis-server 
EXPOSE 6379 
ENTRYPOINT ["/usr/bin/redis-server"]
Connections 
• Open network ports to the outside world 
• Connect ports between containers via a private 
network 
• Mount persistent storage - c.f. Amazon EBS
Zen of Containers 
• Devs fill containers - with code 
• Ops slings them around 
• c.f. intermodal cargo containers
Collaboration 
• Docker Hub provides a GitHub-like experience to 
publish/share containers 
• Traditional VMs hard to share 
• Automated build from GH or BB 
• Private DockerHub available 
• Private, on-premise registry available (& free)
Cold Fusion and Unicorns? 
• Image files are composed of layers - 
one for each step in Dockerfile 
• Each layer is actually an image 
• Each layer is a diff from the previous 
layer 
• The top layer is read-write 
• All done efficiently with union file system
No Neck Beard? 
No Problem 
• Boot2Docker runs on Mac and Windows to provide 
development environment to run Docker 
• VM running minimal Linux kernel and OS 
• Same idea is useful in production - CoreOS
More Info 
• Docker.io 
• DockerBook.com 
• Software Engineering Radio podcast - se-radio.net 
• December 2014

More Related Content

What's hot

What's hot (20)

DockerCon SF 2015: Docker Community in China
DockerCon SF 2015: Docker Community in ChinaDockerCon SF 2015: Docker Community in China
DockerCon SF 2015: Docker Community in China
 
Docker intro
Docker introDocker intro
Docker intro
 
Butter bei die Fische - Ein Jahr Entwicklung und Produktion mit Docker
Butter bei die Fische - Ein Jahr Entwicklung und Produktion mit DockerButter bei die Fische - Ein Jahr Entwicklung und Produktion mit Docker
Butter bei die Fische - Ein Jahr Entwicklung und Produktion mit Docker
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Docker: From Zero to Hero
Docker: From Zero to HeroDocker: From Zero to Hero
Docker: From Zero to Hero
 
Docker Basic Presentation
Docker Basic PresentationDocker Basic Presentation
Docker Basic Presentation
 
Docker lxc win
Docker lxc winDocker lxc win
Docker lxc win
 
Herding your cattle from dev to ops
Herding your cattle from dev to opsHerding your cattle from dev to ops
Herding your cattle from dev to ops
 
Docker Workshop
Docker WorkshopDocker Workshop
Docker Workshop
 
Docker lightning
Docker lightningDocker lightning
Docker lightning
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Docker 101 - Getting started
Docker 101 - Getting startedDocker 101 - Getting started
Docker 101 - Getting started
 
Securing Containers From Day One | null Ahmedabad Meetup
Securing Containers From Day One | null Ahmedabad MeetupSecuring Containers From Day One | null Ahmedabad Meetup
Securing Containers From Day One | null Ahmedabad Meetup
 
Evotalks Docker Presentation
Evotalks Docker PresentationEvotalks Docker Presentation
Evotalks Docker Presentation
 
Docker uiappdev-201505
Docker uiappdev-201505Docker uiappdev-201505
Docker uiappdev-201505
 
Nodejs OC Docker and Node
Nodejs OC Docker and NodeNodejs OC Docker and Node
Nodejs OC Docker and Node
 
Docker
DockerDocker
Docker
 
Docker Basics
Docker BasicsDocker Basics
Docker Basics
 
Dockerizing your applications - Docker workshop @Twitter
Dockerizing your applications - Docker workshop @TwitterDockerizing your applications - Docker workshop @Twitter
Dockerizing your applications - Docker workshop @Twitter
 
Auto deploy symfony app with codeship and elastic beanstalk
Auto deploy symfony app with codeship and elastic beanstalkAuto deploy symfony app with codeship and elastic beanstalk
Auto deploy symfony app with codeship and elastic beanstalk
 

Viewers also liked

研发中心08年度计划书打印版
研发中心08年度计划书打印版研发中心08年度计划书打印版
研发中心08年度计划书打印版
20004
 
成功36式
成功36式成功36式
成功36式
20004
 
培训与发展
培训与发展培训与发展
培训与发展
20004
 
《跟你的产品谈恋爱》
《跟你的产品谈恋爱》《跟你的产品谈恋爱》
《跟你的产品谈恋爱》
20004
 
年度考核
年度考核年度考核
年度考核
20004
 
现代商务礼仪指引
现代商务礼仪指引现代商务礼仪指引
现代商务礼仪指引
20004
 
图表绘制
图表绘制图表绘制
图表绘制
20004
 
职前培训安排(好)
职前培训安排(好)职前培训安排(好)
职前培训安排(好)
20004
 
A Shallow Survey of Alternative Languages on the JVM
A Shallow Survey of Alternative Languages on the JVMA Shallow Survey of Alternative Languages on the JVM
A Shallow Survey of Alternative Languages on the JVM
Charles Anderson
 
科特勒营销案例
科特勒营销案例科特勒营销案例
科特勒营销案例
20004
 

Viewers also liked (20)

研发中心08年度计划书打印版
研发中心08年度计划书打印版研发中心08年度计划书打印版
研发中心08年度计划书打印版
 
成功36式
成功36式成功36式
成功36式
 
培训与发展
培训与发展培训与发展
培训与发展
 
《跟你的产品谈恋爱》
《跟你的产品谈恋爱》《跟你的产品谈恋爱》
《跟你的产品谈恋爱》
 
年度考核
年度考核年度考核
年度考核
 
Youshi
YoushiYoushi
Youshi
 
Intro To Design Kitchen Bath
Intro To Design Kitchen BathIntro To Design Kitchen Bath
Intro To Design Kitchen Bath
 
September 2 General Meeting
September 2 General MeetingSeptember 2 General Meeting
September 2 General Meeting
 
现代商务礼仪指引
现代商务礼仪指引现代商务礼仪指引
现代商务礼仪指引
 
November 4 General Meeting
November 4 General MeetingNovember 4 General Meeting
November 4 General Meeting
 
Moss Week 10 Final With Answers
Moss   Week 10   Final   With AnswersMoss   Week 10   Final   With Answers
Moss Week 10 Final With Answers
 
图表绘制
图表绘制图表绘制
图表绘制
 
3
33
3
 
工程实战
工程实战工程实战
工程实战
 
October 7 General Meeting
October 7 General MeetingOctober 7 General Meeting
October 7 General Meeting
 
职前培训安排(好)
职前培训安排(好)职前培训安排(好)
职前培训安排(好)
 
September 16 General Meeting
September 16 General MeetingSeptember 16 General Meeting
September 16 General Meeting
 
A Shallow Survey of Alternative Languages on the JVM
A Shallow Survey of Alternative Languages on the JVMA Shallow Survey of Alternative Languages on the JVM
A Shallow Survey of Alternative Languages on the JVM
 
West of England Joint Spatial Plan - what the media is saying
West of England Joint Spatial Plan - what the media is sayingWest of England Joint Spatial Plan - what the media is saying
West of England Joint Spatial Plan - what the media is saying
 
科特勒营销案例
科特勒营销案例科特勒营销案例
科特勒营销案例
 

Similar to Docker - Hack Salem! - November 2014

Lightweight Virtualization Docker in Practice
Lightweight Virtualization Docker in PracticeLightweight Virtualization Docker in Practice
Lightweight Virtualization Docker in Practice
Docker, Inc.
 
Docker in pratice -chenyifei
Docker in pratice -chenyifeiDocker in pratice -chenyifei
Docker in pratice -chenyifei
dotCloud
 
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
 

Similar to Docker - Hack Salem! - November 2014 (20)

Docker in the Oracle Universe / WebLogic 12c / OFM 12c
Docker in the Oracle Universe / WebLogic 12c / OFM 12cDocker in the Oracle Universe / WebLogic 12c / OFM 12c
Docker in the Oracle Universe / WebLogic 12c / OFM 12c
 
Upping your NiFi Game with Docker
Upping your NiFi Game with DockerUpping your NiFi Game with Docker
Upping your NiFi Game with Docker
 
Docker from A to Z, including Swarm and OCCS
Docker from A to Z, including Swarm and OCCSDocker from A to Z, including Swarm and OCCS
Docker from A to Z, including Swarm and OCCS
 
Docker Dojo
Docker DojoDocker Dojo
Docker Dojo
 
Lightweight Virtualization Docker in Practice
Lightweight Virtualization Docker in PracticeLightweight Virtualization Docker in Practice
Lightweight Virtualization Docker in Practice
 
You, and Me, and Docker Makes Three
You, and Me, and Docker Makes ThreeYou, and Me, and Docker Makes Three
You, and Me, and Docker Makes Three
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Docker in pratice -chenyifei
Docker in pratice -chenyifeiDocker in pratice -chenyifei
Docker in pratice -chenyifei
 
Introduction to automated environment management with Docker Containers - for...
Introduction to automated environment management with Docker Containers - for...Introduction to automated environment management with Docker Containers - for...
Introduction to automated environment management with Docker Containers - for...
 
Django and Docker
Django and DockerDjango and Docker
Django and Docker
 
Docker at Djangocon 2013 | Talk by Ken Cochrane
Docker at Djangocon 2013 | Talk by Ken CochraneDocker at Djangocon 2013 | Talk by Ken Cochrane
Docker at Djangocon 2013 | Talk by Ken Cochrane
 
Docker.pptx
Docker.pptxDocker.pptx
Docker.pptx
 
Docker and Microservice
Docker and MicroserviceDocker and Microservice
Docker and Microservice
 
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...
 
Dockerize the World
Dockerize the WorldDockerize the World
Dockerize the World
 
Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...
Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...
Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...
 
Docker
DockerDocker
Docker
 
Java developer intro to environment management with vagrant puppet and docker
Java developer intro to environment management with vagrant puppet and dockerJava developer intro to environment management with vagrant puppet and docker
Java developer intro to environment management with vagrant puppet and docker
 
Informix on Docker Hub
Informix on Docker HubInformix on Docker Hub
Informix on Docker Hub
 
DockerCon US 2015 - Engine Breakout Session
DockerCon US 2015 - Engine Breakout SessionDockerCon US 2015 - Engine Breakout Session
DockerCon US 2015 - Engine Breakout Session
 

More from Charles Anderson

More from Charles Anderson (9)

Modern php
Modern phpModern php
Modern php
 
Literate Programming
Literate ProgrammingLiterate Programming
Literate Programming
 
Inrastructure as Code
Inrastructure as CodeInrastructure as Code
Inrastructure as Code
 
How to get a Software Job w/o Experience
How to get a Software Job w/o ExperienceHow to get a Software Job w/o Experience
How to get a Software Job w/o Experience
 
A Brief Introduction to Redis
A Brief Introduction to RedisA Brief Introduction to Redis
A Brief Introduction to Redis
 
How to Get a Software Job w/o Experience
How to Get a Software Job w/o ExperienceHow to Get a Software Job w/o Experience
How to Get a Software Job w/o Experience
 
How To Protect Yourself and Your Computer Online
How To Protect Yourself and Your Computer OnlineHow To Protect Yourself and Your Computer Online
How To Protect Yourself and Your Computer Online
 
Jython: Integrating Python and Java
Jython: Integrating Python and JavaJython: Integrating Python and Java
Jython: Integrating Python and Java
 
Groovy a Scripting Language for Java
Groovy a Scripting Language for JavaGroovy a Scripting Language for Java
Groovy a Scripting Language for Java
 

Recently uploaded

Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
mbmh111980
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
Alluxio, Inc.
 

Recently uploaded (20)

TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
AI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in MichelangeloAI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in Michelangelo
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
 
Studiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareStudiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting software
 
Crafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationCrafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM Integration
 
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAGAI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
iGaming Platform & Lottery Solutions by Skilrock
iGaming Platform & Lottery Solutions by SkilrockiGaming Platform & Lottery Solutions by Skilrock
iGaming Platform & Lottery Solutions by Skilrock
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
 
Breaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdfBreaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdf
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 

Docker - Hack Salem! - November 2014

  • 1. Docker Charles Anderson Hack Salem - November 2014
  • 2. What is Docker? • An open platform for developing, shipping, and running applications • Linux-based • Why? Speed - ship code faster, including test and deployment • A solution to “works on my machine” Not!
  • 4. Containers • Containers are a lightweight virtualization technology • User-mode virtualization - not hardware virtualization • Benefits: density, speed, portability • Not new, and Docker isn’t the first
  • 5. Peace, Love and Understanding • Devs and ops working together with a common tool • “The real value of Docker is not technology. It’s getting people to agree on something.” - Solomon Hykes, CTO Docker
  • 6. What’s a Container? • An isolated environment to run user-mode code • Looks like you have the OS to yourself • An initial file system called an image • Minimal - a lot less than a full Linux distro • Very fast to start - less than a second • Network connections
  • 7. Images • Start with a base - very minimal • Add packages using usual tools - e.g. apt, yum • Dockerfile is a recipe to build the image • Not needed at run-time
  • 8. Dockerfile FROM ubuntu:12.10 RUN apt-get update && apt-get install -y redis-server EXPOSE 6379 ENTRYPOINT ["/usr/bin/redis-server"]
  • 9. Connections • Open network ports to the outside world • Connect ports between containers via a private network • Mount persistent storage - c.f. Amazon EBS
  • 10. Zen of Containers • Devs fill containers - with code • Ops slings them around • c.f. intermodal cargo containers
  • 11. Collaboration • Docker Hub provides a GitHub-like experience to publish/share containers • Traditional VMs hard to share • Automated build from GH or BB • Private DockerHub available • Private, on-premise registry available (& free)
  • 12. Cold Fusion and Unicorns? • Image files are composed of layers - one for each step in Dockerfile • Each layer is actually an image • Each layer is a diff from the previous layer • The top layer is read-write • All done efficiently with union file system
  • 13. No Neck Beard? No Problem • Boot2Docker runs on Mac and Windows to provide development environment to run Docker • VM running minimal Linux kernel and OS • Same idea is useful in production - CoreOS
  • 14. More Info • Docker.io • DockerBook.com • Software Engineering Radio podcast - se-radio.net • December 2014