SlideShare a Scribd company logo
1 of 53
Download to read offline
19 Months Later: An Incredible Platform and Ecosystem 
Community 
640+ Contributors 250+ Meetups on Docker 
2.75M Downloads 6.7K Projects on GitHub 
Official Repos & 14K+ Dockerized Apps 
Support 
Enterprise Support 
Robust Documentation 
Implementation, Integration, Training 
Network of Partners 
The Docker Platform 
! 
Docker Engine 
Docker Hub 
! 
Build, Ship, and Run 
Partners 
Content 
Users
60+ People and a Turtle 
Now up to 
60+ people 
(and our pet 
turtle, Gordon)
…to Build, Ship, and Run 
Docker Hub 
Build Ship 
Run 
Source 
Dev 
QA 
Staging 
Linux OS 
Doocckkeerr 
Linux OS 
Linux OS 
Doocckkeerr 
Infrastructure Management 
Physical 
Infrastructure Management 
Virtual 
Cloud 
Source Code 
Repository 
DockerFile 
Docker 
Boot2Docker 
Linux OS 
Doocckkeerr 
TEST TEST 
TEST TEST 
TEST 
GCE RAX IBM 
Mac/Win Dev 
Machine 
Analytics 
DB 
Prod Machine 
Doocckkeerr 
++ 
Users Collab 
Provenance Policy 
Registries 
Public Curated Private 
Docker Hub API 
Third Party Tools 
Prod Machine 
Prod Machine 
VM 
DoDcokcekrer 
VM 
DoDcokcekrer 
VM 
DoDcokcekrer 
QA Machine
Deploy services 
reliably & consistently 
• If it works locally, it will work on the server 
• With exactly the same behavior 
• Regardless of versions 
• Regardless of distros 
• Regardless of dependencies
Better! 
Faster! 
Stronger!
Traditional Containerized 
Hardware 
VM (n) 
Hardware 
process (n) 
process (n) 
Hardware 
VM (n) 
Hardware 
"contained" 
process (n) 
"contained" 
process (n) process (n) 
"contained" 
process (n)
Traditional Host 
syslogd nginx backup-agent sshd
Traditional Host 
syslogd nginx backup-agent sshd 
Dockerized Host 
syslogd nginx backup-agent sshd
a security product? 
• Docker Engine can be used as a security product. 
• It provides a wrapper around processes 
• Provides a path toward attestation of arbitrary 
processes (Trusted Compute) 
• You can use VMs to wrap containers 
(and you can use containers inside of VMs)
Dockerized Host 
syslogd nginx backup-agent sshd 
golden image: 
FROM ubuntu 
RUN apt-get install  
rsyslog 
nginx 
amanda 
opensshd
Dockerized Host 
syslogd nginx backup-agent sshd 
syslog image: 
FROM ubuntu 
RUN apt-get install rsyslog 
nginx image: 
FROM fedora:f20 
RUN yum install nginx 
backup-agent image: 
FROM ubuntu 
RUN apt-get install amanda 
sshd image: 
FROM debian 
RUN apt-get install opensshd
Do it! 
‣ Build an image" 
‣ Run it locally 
‣ Push it to a registry (public or private) 
‣ Run it (automatically!) in CI/CD and staging 
‣ Run it in production
It’s an image builder.
Anatomy of a 
chef-container run: 
Image 
Linux 
Docker Initiates Creates Container 
Chef 
Chef 
Runs 
Configures 
Build Creates 
Runs 
Chef 
Configures 
Stage 1 
Stage 2
Do it! 
‣ Build an image 
‣ Run it locally 
‣ Push it to a registry (public or private) 
‣ Run it (automatically!) in CI/CD and staging 
‣ Run it in production
“docker run -t -i  
—rm=true my-image“ 
Legend: 
-t = allocate tty 
-i = interactive 
—rm = remove ephemeral filesystem when exiting
“docker ps”
Do it! 
‣ Build an image 
‣ Run it locally 
‣ Push it to a registry (public or private)" 
‣ Run it (automatically!) in CI/CD and staging 
‣ Run it in production
“docker push user/image”
Do it! 
‣ Build an image 
‣ Run it locally 
‣ Push it to a registry (public or private) 
‣ Run it (automatically!) in CI/CD and staging 
‣ Run it in production
CI services… 
and others…?
$ ID=$(docker build $app-dir) 
$ docker run —rm=true $ID 
$ echo $?
fig - local orchestration 
——fig.yml—— 
web: 
build: . 
command: python app.py 
ports: 
- "5000:5000" 
volumes: 
- .:/code 
links: 
- redis 
redis: 
image: orchardup/redis
$ ls 
Dockerfile fig.yml src 
$ docker run —privileged -v .:/opt/figapp  
ewindisch/figleaf 
$ echo $? 
Legend: 
—privileged = run “uncontained”. A permissive “firewall”, if you will. 
-v = provide volume or bind-mount filesystem into container
Do it! 
‣ Build an image 
‣ Run it locally 
‣ Push it to a registry (public or private) 
‣ Run it (automatically!) in CI/CD and staging 
‣ Run it in production
$ docker run -t -i  
—rm=false  
—restart=“on-failure[:5]” 
busybox 
Legend: 
—restart=Restart policy on exit (no, on-failure[:max-retry], always)
Managing Docker 
at scale
Creating Containers 
is Easy
Managing them 
SUCKS 
needs improvement
Management Ecosystem 
Mesos 
ClusterHQ Clocker Flynn
PaaS ecosystem
Configuration / Infrastructure 
Management 
• Chef 
• Puppet 
• Salt 
• Ansible 
• CFEngine 
• etc…
Container Inventory 
• discoverd / sdutil 
• serf 
• skydock 
• others?
Docker Remote API
• By default the Docker daemon listens on 
unix:///var/run/docker.sock 
• Can listen on a TCP socket with TLS 1.0+ 
Plain-text also possible, but do not use it! 
(enabled by default with boot2docker) 
• Used by various community tools: 
fig, vagrant, ansible, etc.
POST /containers/create HTTP/1.1 
Content-Type: application/json 
! 
{ 
"Hostname":"", 
"Domainname": "", 
"User":"", 
"Memory":0, 
"MemorySwap":0, 
"Env":null, 
“Cmd":[ "date" ], 
"Image":"base", 
“Volumes":{ "/tmp": {} }, 
"WorkingDir":"", 
"NetworkDisabled": false, 
"ExposedPorts":{ 
"22/tcp": {} 
}, 
"RestartPolicy": { "Name": "always" } 
} 
HTTP/1.1 201 Created 
Content-Type: application/json 
! 
{ 
"Id":"e90e34656806" 
"Warnings":[] 
}
Containers 
• List containers 
• Create a 
container 
• Inspect a 
container 
• List processes 
running inside a 
container 
• Get container 
logs 
• Inspect 
changes on a 
container's 
filesystem 
• Export a 
container 
• Resize a 
container TTY 
• Start a 
container 
• Stop a 
container 
• Restart a 
container 
• Kill a container 
• Pause a 
container 
• Unpause a 
container 
• Attach to a 
container 
• Wait a container 
• Remove a 
container 
• Copy files or 
folders from a 
container 
! 
!
Images 
• List Images 
• Create an image 
• Inspect an image 
• Get the history of an image 
• Push an image on the registry 
• Tag an image into a repository 
• Remove an image 
• Search images
Misc 
• Build an image from Dockerfile 
via stdin 
• Check auth configuration 
• Display system-wide 
information 
• Show the docker version 
information 
• Ping the docker server 
• Create a new image from a 
container's changes 
• Monitor Docker's events 
• Get a tarball containing all 
images in a repository 
• Get a tarball containing all 
images. 
• Load a tarball with a set of 
images and tags into docker 
• Image tarball format 
• Exec Create 
• Exec Start 
• Exec Resize
Q & A 
@ewindisch

More Related Content

What's hot

2 docker engine_hands_on
2 docker engine_hands_on2 docker engine_hands_on
2 docker engine_hands_onFEG
 
Austin - Container Days - Docker 101
Austin - Container Days - Docker 101Austin - Container Days - Docker 101
Austin - Container Days - Docker 101Bill Maxwell
 
Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
Ceph, Docker, Heroku Slugs, CoreOS and Deis OverviewCeph, Docker, Heroku Slugs, CoreOS and Deis Overview
Ceph, Docker, Heroku Slugs, CoreOS and Deis OverviewLeo Lorieri
 
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis OverviewLeo Lorieri
 
Docker All The Things - ASP.NET 4.x and Windows Server Containers
Docker All The Things - ASP.NET 4.x and Windows Server ContainersDocker All The Things - ASP.NET 4.x and Windows Server Containers
Docker All The Things - ASP.NET 4.x and Windows Server ContainersAnthony Chu
 
Automating Mendix application deployments with Nix
Automating Mendix application deployments with NixAutomating Mendix application deployments with Nix
Automating Mendix application deployments with NixSander van der Burg
 
Hide your development environment and application in a container
Hide your development environment and application in a containerHide your development environment and application in a container
Hide your development environment and application in a containerJohan Janssen
 
Develop QNAP NAS App by Docker
Develop QNAP NAS App by DockerDevelop QNAP NAS App by Docker
Develop QNAP NAS App by DockerTerry Chen
 
Dockerizing stashboard - Docker meetup at Twilio
Dockerizing stashboard - Docker meetup at TwilioDockerizing stashboard - Docker meetup at Twilio
Dockerizing stashboard - Docker meetup at TwiliodotCloud
 
2015 DockerCon Using Docker in production at bity.com
2015 DockerCon Using Docker in production at bity.com2015 DockerCon Using Docker in production at bity.com
2015 DockerCon Using Docker in production at bity.comMathieu Buffenoir
 
Docker composeで開発環境をメンバに配布せよ
Docker composeで開発環境をメンバに配布せよDocker composeで開発環境をメンバに配布せよ
Docker composeで開発環境をメンバに配布せよYusuke Kon
 
Infrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & AnsibleInfrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & AnsibleRobert Reiz
 
Использование Docker в CI / Александр Акбашев (HERE Technologies)
Использование Docker в CI / Александр Акбашев (HERE Technologies)Использование Docker в CI / Александр Акбашев (HERE Technologies)
Использование Docker в CI / Александр Акбашев (HERE Technologies)Ontico
 
Docker puppetcamp london 2013
Docker puppetcamp london 2013Docker puppetcamp london 2013
Docker puppetcamp london 2013Tomas Doran
 
How to create your own hack environment
How to create your own hack environmentHow to create your own hack environment
How to create your own hack environmentSumedt Jitpukdebodin
 
Docker Ecosystem: Part V - Docker Registry
Docker Ecosystem: Part V - Docker RegistryDocker Ecosystem: Part V - Docker Registry
Docker Ecosystem: Part V - Docker RegistryMario IC
 
Ansible Oxford - Cows & Containers
Ansible Oxford - Cows & ContainersAnsible Oxford - Cows & Containers
Ansible Oxford - Cows & Containersjonatanblue
 
Using Nix and Docker as automated deployment solutions
Using Nix and Docker as automated deployment solutionsUsing Nix and Docker as automated deployment solutions
Using Nix and Docker as automated deployment solutionsSander van der Burg
 
Dockerize Your Projects - A Brief Introduction to Containerization
Dockerize Your Projects - A Brief Introduction to ContainerizationDockerize Your Projects - A Brief Introduction to Containerization
Dockerize Your Projects - A Brief Introduction to ContainerizationSawood Alam
 

What's hot (20)

2 docker engine_hands_on
2 docker engine_hands_on2 docker engine_hands_on
2 docker engine_hands_on
 
Austin - Container Days - Docker 101
Austin - Container Days - Docker 101Austin - Container Days - Docker 101
Austin - Container Days - Docker 101
 
Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
Ceph, Docker, Heroku Slugs, CoreOS and Deis OverviewCeph, Docker, Heroku Slugs, CoreOS and Deis Overview
Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
 
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
[EXTENDED] Ceph, Docker, Heroku Slugs, CoreOS and Deis Overview
 
Docker All The Things - ASP.NET 4.x and Windows Server Containers
Docker All The Things - ASP.NET 4.x and Windows Server ContainersDocker All The Things - ASP.NET 4.x and Windows Server Containers
Docker All The Things - ASP.NET 4.x and Windows Server Containers
 
Automating Mendix application deployments with Nix
Automating Mendix application deployments with NixAutomating Mendix application deployments with Nix
Automating Mendix application deployments with Nix
 
Hide your development environment and application in a container
Hide your development environment and application in a containerHide your development environment and application in a container
Hide your development environment and application in a container
 
Develop QNAP NAS App by Docker
Develop QNAP NAS App by DockerDevelop QNAP NAS App by Docker
Develop QNAP NAS App by Docker
 
Dockerizing stashboard - Docker meetup at Twilio
Dockerizing stashboard - Docker meetup at TwilioDockerizing stashboard - Docker meetup at Twilio
Dockerizing stashboard - Docker meetup at Twilio
 
2015 DockerCon Using Docker in production at bity.com
2015 DockerCon Using Docker in production at bity.com2015 DockerCon Using Docker in production at bity.com
2015 DockerCon Using Docker in production at bity.com
 
Docker composeで開発環境をメンバに配布せよ
Docker composeで開発環境をメンバに配布せよDocker composeで開発環境をメンバに配布せよ
Docker composeで開発環境をメンバに配布せよ
 
Infrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & AnsibleInfrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & Ansible
 
Использование Docker в CI / Александр Акбашев (HERE Technologies)
Использование Docker в CI / Александр Акбашев (HERE Technologies)Использование Docker в CI / Александр Акбашев (HERE Technologies)
Использование Docker в CI / Александр Акбашев (HERE Technologies)
 
Puppeteerのお話
Puppeteerのお話Puppeteerのお話
Puppeteerのお話
 
Docker puppetcamp london 2013
Docker puppetcamp london 2013Docker puppetcamp london 2013
Docker puppetcamp london 2013
 
How to create your own hack environment
How to create your own hack environmentHow to create your own hack environment
How to create your own hack environment
 
Docker Ecosystem: Part V - Docker Registry
Docker Ecosystem: Part V - Docker RegistryDocker Ecosystem: Part V - Docker Registry
Docker Ecosystem: Part V - Docker Registry
 
Ansible Oxford - Cows & Containers
Ansible Oxford - Cows & ContainersAnsible Oxford - Cows & Containers
Ansible Oxford - Cows & Containers
 
Using Nix and Docker as automated deployment solutions
Using Nix and Docker as automated deployment solutionsUsing Nix and Docker as automated deployment solutions
Using Nix and Docker as automated deployment solutions
 
Dockerize Your Projects - A Brief Introduction to Containerization
Dockerize Your Projects - A Brief Introduction to ContainerizationDockerize Your Projects - A Brief Introduction to Containerization
Dockerize Your Projects - A Brief Introduction to Containerization
 

Viewers also liked

Docker dev ops for cd meetup 12-14
Docker dev ops for cd meetup 12-14Docker dev ops for cd meetup 12-14
Docker dev ops for cd meetup 12-14Simon Storm
 
Streamline your development environment with docker
Streamline your development environment with dockerStreamline your development environment with docker
Streamline your development environment with dockerGiacomo Bagnoli
 
[DockerHN_2nd_meetup] Ecosystem & Orchestration Tools
[DockerHN_2nd_meetup] Ecosystem & Orchestration Tools[DockerHN_2nd_meetup] Ecosystem & Orchestration Tools
[DockerHN_2nd_meetup] Ecosystem & Orchestration ToolsNguyen Anh Tu
 
Codefresh + Cloud 66 webinar: Testing Strategies for Docker Driven Development
Codefresh + Cloud 66 webinar: Testing Strategies for Docker Driven DevelopmentCodefresh + Cloud 66 webinar: Testing Strategies for Docker Driven Development
Codefresh + Cloud 66 webinar: Testing Strategies for Docker Driven DevelopmentCodefresh
 
How Docker Accelerates Continuous Development at Codefresh
How Docker Accelerates Continuous Development at CodefreshHow Docker Accelerates Continuous Development at Codefresh
How Docker Accelerates Continuous Development at CodefreshCodefresh
 
Codefresh + BlazeMeter Webinar: Continuous Testing for Containerized Applicat...
Codefresh + BlazeMeter Webinar: Continuous Testing for Containerized Applicat...Codefresh + BlazeMeter Webinar: Continuous Testing for Containerized Applicat...
Codefresh + BlazeMeter Webinar: Continuous Testing for Containerized Applicat...Codefresh
 
AWS Elastic Container Service - DockerHN
AWS Elastic Container Service - DockerHNAWS Elastic Container Service - DockerHN
AWS Elastic Container Service - DockerHNNguyen Anh Tu
 
Docker driven development pipeline webinar (1)
Docker driven development pipeline webinar (1)Docker driven development pipeline webinar (1)
Docker driven development pipeline webinar (1)Codefresh
 
Containers #101 Meetup: Containers and OpenStack
Containers #101 Meetup: Containers and OpenStackContainers #101 Meetup: Containers and OpenStack
Containers #101 Meetup: Containers and OpenStackCodefresh
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker IntroductionPeng Xiao
 
DockerCon 2016 Ecosystem - Everything You Need to Know About Docker and Stora...
DockerCon 2016 Ecosystem - Everything You Need to Know About Docker and Stora...DockerCon 2016 Ecosystem - Everything You Need to Know About Docker and Stora...
DockerCon 2016 Ecosystem - Everything You Need to Know About Docker and Stora...ClusterHQ
 
Chef Cookbook Testing and Continuous Integration
Chef Cookbook Testing and Continuous IntegrationChef Cookbook Testing and Continuous Integration
Chef Cookbook Testing and Continuous IntegrationJulian Dunn
 
How Docker Fits into DevOps Ecosystem
How Docker Fits into DevOps EcosystemHow Docker Fits into DevOps Ecosystem
How Docker Fits into DevOps EcosystemEdureka!
 
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...Daniel Krook
 
Docker Workshop - Orchestrating Docker Containers
Docker Workshop - Orchestrating Docker ContainersDocker Workshop - Orchestrating Docker Containers
Docker Workshop - Orchestrating Docker ContainersHugo Henley
 
Chef Fundamentals Training Series Module 1: Overview of Chef
Chef Fundamentals Training Series Module 1: Overview of ChefChef Fundamentals Training Series Module 1: Overview of Chef
Chef Fundamentals Training Series Module 1: Overview of ChefChef Software, Inc.
 
Overview of Chef - Fundamentals Webinar Series Part 1
Overview of Chef - Fundamentals Webinar Series Part 1Overview of Chef - Fundamentals Webinar Series Part 1
Overview of Chef - Fundamentals Webinar Series Part 1Chef
 

Viewers also liked (20)

Intro to Chef
Intro to ChefIntro to Chef
Intro to Chef
 
Docker dev ops for cd meetup 12-14
Docker dev ops for cd meetup 12-14Docker dev ops for cd meetup 12-14
Docker dev ops for cd meetup 12-14
 
Streamline your development environment with docker
Streamline your development environment with dockerStreamline your development environment with docker
Streamline your development environment with docker
 
[DockerHN_2nd_meetup] Ecosystem & Orchestration Tools
[DockerHN_2nd_meetup] Ecosystem & Orchestration Tools[DockerHN_2nd_meetup] Ecosystem & Orchestration Tools
[DockerHN_2nd_meetup] Ecosystem & Orchestration Tools
 
Introduction Into Docker Ecosystem
Introduction Into Docker EcosystemIntroduction Into Docker Ecosystem
Introduction Into Docker Ecosystem
 
Codefresh + Cloud 66 webinar: Testing Strategies for Docker Driven Development
Codefresh + Cloud 66 webinar: Testing Strategies for Docker Driven DevelopmentCodefresh + Cloud 66 webinar: Testing Strategies for Docker Driven Development
Codefresh + Cloud 66 webinar: Testing Strategies for Docker Driven Development
 
How Docker Accelerates Continuous Development at Codefresh
How Docker Accelerates Continuous Development at CodefreshHow Docker Accelerates Continuous Development at Codefresh
How Docker Accelerates Continuous Development at Codefresh
 
Codefresh + BlazeMeter Webinar: Continuous Testing for Containerized Applicat...
Codefresh + BlazeMeter Webinar: Continuous Testing for Containerized Applicat...Codefresh + BlazeMeter Webinar: Continuous Testing for Containerized Applicat...
Codefresh + BlazeMeter Webinar: Continuous Testing for Containerized Applicat...
 
AWS Elastic Container Service - DockerHN
AWS Elastic Container Service - DockerHNAWS Elastic Container Service - DockerHN
AWS Elastic Container Service - DockerHN
 
Docker driven development pipeline webinar (1)
Docker driven development pipeline webinar (1)Docker driven development pipeline webinar (1)
Docker driven development pipeline webinar (1)
 
Docker Orchestrators
Docker OrchestratorsDocker Orchestrators
Docker Orchestrators
 
Containers #101 Meetup: Containers and OpenStack
Containers #101 Meetup: Containers and OpenStackContainers #101 Meetup: Containers and OpenStack
Containers #101 Meetup: Containers and OpenStack
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
DockerCon 2016 Ecosystem - Everything You Need to Know About Docker and Stora...
DockerCon 2016 Ecosystem - Everything You Need to Know About Docker and Stora...DockerCon 2016 Ecosystem - Everything You Need to Know About Docker and Stora...
DockerCon 2016 Ecosystem - Everything You Need to Know About Docker and Stora...
 
Chef Cookbook Testing and Continuous Integration
Chef Cookbook Testing and Continuous IntegrationChef Cookbook Testing and Continuous Integration
Chef Cookbook Testing and Continuous Integration
 
How Docker Fits into DevOps Ecosystem
How Docker Fits into DevOps EcosystemHow Docker Fits into DevOps Ecosystem
How Docker Fits into DevOps Ecosystem
 
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
The Containers Ecosystem, the OpenStack Magnum Project, the Open Container In...
 
Docker Workshop - Orchestrating Docker Containers
Docker Workshop - Orchestrating Docker ContainersDocker Workshop - Orchestrating Docker Containers
Docker Workshop - Orchestrating Docker Containers
 
Chef Fundamentals Training Series Module 1: Overview of Chef
Chef Fundamentals Training Series Module 1: Overview of ChefChef Fundamentals Training Series Module 1: Overview of Chef
Chef Fundamentals Training Series Module 1: Overview of Chef
 
Overview of Chef - Fundamentals Webinar Series Part 1
Overview of Chef - Fundamentals Webinar Series Part 1Overview of Chef - Fundamentals Webinar Series Part 1
Overview of Chef - Fundamentals Webinar Series Part 1
 

Similar to Docker for Developers: Dev, Test, Deploy @ BucksCo Devops at MeetMe HQ

The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, OrchestrationThe Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, OrchestrationErica Windisch
 
PDXPortland - Dockerize Django
PDXPortland - Dockerize DjangoPDXPortland - Dockerize Django
PDXPortland - Dockerize DjangoHannes Hapke
 
Docker module 1
Docker module 1Docker module 1
Docker module 1Liang Bo
 
Introduction to Docker and deployment and Azure
Introduction to Docker and deployment and AzureIntroduction to Docker and deployment and Azure
Introduction to Docker and deployment and AzureJérôme Petazzoni
 
DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline  DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline Docker, Inc.
 
From development environments to production deployments with Docker, Compose,...
From development environments to production deployments with Docker, Compose,...From development environments to production deployments with Docker, Compose,...
From development environments to production deployments with Docker, Compose,...Jérôme Petazzoni
 
Running the Oracle SOA Suite Environment in a Docker Container
Running the Oracle SOA Suite Environment in a Docker ContainerRunning the Oracle SOA Suite Environment in a Docker Container
Running the Oracle SOA Suite Environment in a Docker ContainerGuido Schmutz
 
DCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development PipelineDCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development PipelineDocker, Inc.
 
Developing and Deploying PHP with Docker
Developing and Deploying PHP with DockerDeveloping and Deploying PHP with Docker
Developing and Deploying PHP with DockerPatrick Mizer
 
ContainerDays Boston 2015: "Continuous Delivery with Containers" (Nick Gauthier)
ContainerDays Boston 2015: "Continuous Delivery with Containers" (Nick Gauthier)ContainerDays Boston 2015: "Continuous Delivery with Containers" (Nick Gauthier)
ContainerDays Boston 2015: "Continuous Delivery with Containers" (Nick Gauthier)DynamicInfraDays
 
Docker and the Container Revolution
Docker and the Container RevolutionDocker and the Container Revolution
Docker and the Container RevolutionRomain Dorgueil
 
Kubernetes Story - Day 1: Build and Manage Containers with Podman
Kubernetes Story - Day 1: Build and Manage Containers with PodmanKubernetes Story - Day 1: Build and Manage Containers with Podman
Kubernetes Story - Day 1: Build and Manage Containers with PodmanMihai Criveti
 
Настройка окружения для кросскомпиляции проектов на основе docker'a
Настройка окружения для кросскомпиляции проектов на основе docker'aНастройка окружения для кросскомпиляции проектов на основе docker'a
Настройка окружения для кросскомпиляции проектов на основе docker'acorehard_by
 
Codetainer: a Docker-based browser code 'sandbox'
Codetainer: a Docker-based browser code 'sandbox'Codetainer: a Docker-based browser code 'sandbox'
Codetainer: a Docker-based browser code 'sandbox'Jen Andre
 
Docker presentation | Paris Docker Meetup
Docker presentation | Paris Docker MeetupDocker presentation | Paris Docker Meetup
Docker presentation | Paris Docker MeetupdotCloud
 

Similar to Docker for Developers: Dev, Test, Deploy @ BucksCo Devops at MeetMe HQ (20)

The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, OrchestrationThe Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
The Docker "Gauntlet" - Introduction, Ecosystem, Deployment, Orchestration
 
PDXPortland - Dockerize Django
PDXPortland - Dockerize DjangoPDXPortland - Dockerize Django
PDXPortland - Dockerize Django
 
Docker module 1
Docker module 1Docker module 1
Docker module 1
 
Introduction to Docker and deployment and Azure
Introduction to Docker and deployment and AzureIntroduction to Docker and deployment and Azure
Introduction to Docker and deployment and Azure
 
DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline  DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline
 
Docker Basics
Docker BasicsDocker Basics
Docker Basics
 
From development environments to production deployments with Docker, Compose,...
From development environments to production deployments with Docker, Compose,...From development environments to production deployments with Docker, Compose,...
From development environments to production deployments with Docker, Compose,...
 
Running the Oracle SOA Suite Environment in a Docker Container
Running the Oracle SOA Suite Environment in a Docker ContainerRunning the Oracle SOA Suite Environment in a Docker Container
Running the Oracle SOA Suite Environment in a Docker Container
 
DCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development PipelineDCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development Pipeline
 
Developing and Deploying PHP with Docker
Developing and Deploying PHP with DockerDeveloping and Deploying PHP with Docker
Developing and Deploying PHP with Docker
 
Containers 101
Containers 101Containers 101
Containers 101
 
ContainerDays Boston 2015: "Continuous Delivery with Containers" (Nick Gauthier)
ContainerDays Boston 2015: "Continuous Delivery with Containers" (Nick Gauthier)ContainerDays Boston 2015: "Continuous Delivery with Containers" (Nick Gauthier)
ContainerDays Boston 2015: "Continuous Delivery with Containers" (Nick Gauthier)
 
Docker 101
Docker 101Docker 101
Docker 101
 
Docker Starter Pack
Docker Starter PackDocker Starter Pack
Docker Starter Pack
 
Docker and the Container Revolution
Docker and the Container RevolutionDocker and the Container Revolution
Docker and the Container Revolution
 
Kubernetes Story - Day 1: Build and Manage Containers with Podman
Kubernetes Story - Day 1: Build and Manage Containers with PodmanKubernetes Story - Day 1: Build and Manage Containers with Podman
Kubernetes Story - Day 1: Build and Manage Containers with Podman
 
Настройка окружения для кросскомпиляции проектов на основе docker'a
Настройка окружения для кросскомпиляции проектов на основе docker'aНастройка окружения для кросскомпиляции проектов на основе docker'a
Настройка окружения для кросскомпиляции проектов на основе docker'a
 
Codetainer: a Docker-based browser code 'sandbox'
Codetainer: a Docker-based browser code 'sandbox'Codetainer: a Docker-based browser code 'sandbox'
Codetainer: a Docker-based browser code 'sandbox'
 
Docker Ecosystem on Azure
Docker Ecosystem on AzureDocker Ecosystem on Azure
Docker Ecosystem on Azure
 
Docker presentation | Paris Docker Meetup
Docker presentation | Paris Docker MeetupDocker presentation | Paris Docker Meetup
Docker presentation | Paris Docker Meetup
 

More from Erica Windisch

Debugging & Profiling of AWS Lambda: ServerlessConf - IOpipe
Debugging & Profiling of AWS Lambda: ServerlessConf - IOpipeDebugging & Profiling of AWS Lambda: ServerlessConf - IOpipe
Debugging & Profiling of AWS Lambda: ServerlessConf - IOpipeErica Windisch
 
Embracing Serverless Ops (Lightning Talk)
Embracing Serverless Ops (Lightning Talk)Embracing Serverless Ops (Lightning Talk)
Embracing Serverless Ops (Lightning Talk)Erica Windisch
 
Ops for NoOps - Operational Challenges for Serverless Apps
Ops for NoOps - Operational Challenges for Serverless AppsOps for NoOps - Operational Challenges for Serverless Apps
Ops for NoOps - Operational Challenges for Serverless AppsErica Windisch
 
Building Composable Serverless Apps with IOpipe
Building Composable Serverless Apps with IOpipe Building Composable Serverless Apps with IOpipe
Building Composable Serverless Apps with IOpipe Erica Windisch
 
Patterns for Secure Containerized Applications (Docker)
Patterns for Secure Containerized Applications (Docker)Patterns for Secure Containerized Applications (Docker)
Patterns for Secure Containerized Applications (Docker)Erica Windisch
 
Orchestrating Docker with OpenStack
Orchestrating Docker with OpenStackOrchestrating Docker with OpenStack
Orchestrating Docker with OpenStackErica Windisch
 
Things will Change - Usenix Keynote UCMS'14
Things will Change - Usenix Keynote UCMS'14Things will Change - Usenix Keynote UCMS'14
Things will Change - Usenix Keynote UCMS'14Erica Windisch
 
Deploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGH
Deploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGHDeploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGH
Deploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGHErica Windisch
 
Practical Docker for OpenStack (Juno Summit - May 15th, 2014)
Practical Docker for OpenStack (Juno Summit - May 15th, 2014)Practical Docker for OpenStack (Juno Summit - May 15th, 2014)
Practical Docker for OpenStack (Juno Summit - May 15th, 2014)Erica Windisch
 
Provisioning & Deploying with Docker
Provisioning & Deploying with DockerProvisioning & Deploying with Docker
Provisioning & Deploying with DockerErica Windisch
 
Practical Docker for OpenStack - NYC / PHL OpenStack meetup (4-23-2014)
Practical Docker for OpenStack - NYC / PHL OpenStack meetup (4-23-2014)Practical Docker for OpenStack - NYC / PHL OpenStack meetup (4-23-2014)
Practical Docker for OpenStack - NYC / PHL OpenStack meetup (4-23-2014)Erica Windisch
 
Docker OpenStack - 3/27/2014
Docker OpenStack - 3/27/2014Docker OpenStack - 3/27/2014
Docker OpenStack - 3/27/2014Erica Windisch
 

More from Erica Windisch (12)

Debugging & Profiling of AWS Lambda: ServerlessConf - IOpipe
Debugging & Profiling of AWS Lambda: ServerlessConf - IOpipeDebugging & Profiling of AWS Lambda: ServerlessConf - IOpipe
Debugging & Profiling of AWS Lambda: ServerlessConf - IOpipe
 
Embracing Serverless Ops (Lightning Talk)
Embracing Serverless Ops (Lightning Talk)Embracing Serverless Ops (Lightning Talk)
Embracing Serverless Ops (Lightning Talk)
 
Ops for NoOps - Operational Challenges for Serverless Apps
Ops for NoOps - Operational Challenges for Serverless AppsOps for NoOps - Operational Challenges for Serverless Apps
Ops for NoOps - Operational Challenges for Serverless Apps
 
Building Composable Serverless Apps with IOpipe
Building Composable Serverless Apps with IOpipe Building Composable Serverless Apps with IOpipe
Building Composable Serverless Apps with IOpipe
 
Patterns for Secure Containerized Applications (Docker)
Patterns for Secure Containerized Applications (Docker)Patterns for Secure Containerized Applications (Docker)
Patterns for Secure Containerized Applications (Docker)
 
Orchestrating Docker with OpenStack
Orchestrating Docker with OpenStackOrchestrating Docker with OpenStack
Orchestrating Docker with OpenStack
 
Things will Change - Usenix Keynote UCMS'14
Things will Change - Usenix Keynote UCMS'14Things will Change - Usenix Keynote UCMS'14
Things will Change - Usenix Keynote UCMS'14
 
Deploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGH
Deploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGHDeploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGH
Deploying Docker (Provisioning /w Docker + Chef/Puppet) - DevopsDaysPGH
 
Practical Docker for OpenStack (Juno Summit - May 15th, 2014)
Practical Docker for OpenStack (Juno Summit - May 15th, 2014)Practical Docker for OpenStack (Juno Summit - May 15th, 2014)
Practical Docker for OpenStack (Juno Summit - May 15th, 2014)
 
Provisioning & Deploying with Docker
Provisioning & Deploying with DockerProvisioning & Deploying with Docker
Provisioning & Deploying with Docker
 
Practical Docker for OpenStack - NYC / PHL OpenStack meetup (4-23-2014)
Practical Docker for OpenStack - NYC / PHL OpenStack meetup (4-23-2014)Practical Docker for OpenStack - NYC / PHL OpenStack meetup (4-23-2014)
Practical Docker for OpenStack - NYC / PHL OpenStack meetup (4-23-2014)
 
Docker OpenStack - 3/27/2014
Docker OpenStack - 3/27/2014Docker OpenStack - 3/27/2014
Docker OpenStack - 3/27/2014
 

Recently uploaded

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
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 Processorsdebabhi2
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
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?Igalia
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
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...Drew Madelung
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
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...Martijn de Jong
 

Recently uploaded (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
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
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
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?
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
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...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
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...
 

Docker for Developers: Dev, Test, Deploy @ BucksCo Devops at MeetMe HQ

  • 1.
  • 2. 19 Months Later: An Incredible Platform and Ecosystem Community 640+ Contributors 250+ Meetups on Docker 2.75M Downloads 6.7K Projects on GitHub Official Repos & 14K+ Dockerized Apps Support Enterprise Support Robust Documentation Implementation, Integration, Training Network of Partners The Docker Platform ! Docker Engine Docker Hub ! Build, Ship, and Run Partners Content Users
  • 3. 60+ People and a Turtle Now up to 60+ people (and our pet turtle, Gordon)
  • 4. …to Build, Ship, and Run Docker Hub Build Ship Run Source Dev QA Staging Linux OS Doocckkeerr Linux OS Linux OS Doocckkeerr Infrastructure Management Physical Infrastructure Management Virtual Cloud Source Code Repository DockerFile Docker Boot2Docker Linux OS Doocckkeerr TEST TEST TEST TEST TEST GCE RAX IBM Mac/Win Dev Machine Analytics DB Prod Machine Doocckkeerr ++ Users Collab Provenance Policy Registries Public Curated Private Docker Hub API Third Party Tools Prod Machine Prod Machine VM DoDcokcekrer VM DoDcokcekrer VM DoDcokcekrer QA Machine
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11. Deploy services reliably & consistently • If it works locally, it will work on the server • With exactly the same behavior • Regardless of versions • Regardless of distros • Regardless of dependencies
  • 12.
  • 14. Traditional Containerized Hardware VM (n) Hardware process (n) process (n) Hardware VM (n) Hardware "contained" process (n) "contained" process (n) process (n) "contained" process (n)
  • 15.
  • 16. Traditional Host syslogd nginx backup-agent sshd
  • 17. Traditional Host syslogd nginx backup-agent sshd Dockerized Host syslogd nginx backup-agent sshd
  • 18. a security product? • Docker Engine can be used as a security product. • It provides a wrapper around processes • Provides a path toward attestation of arbitrary processes (Trusted Compute) • You can use VMs to wrap containers (and you can use containers inside of VMs)
  • 19. Dockerized Host syslogd nginx backup-agent sshd golden image: FROM ubuntu RUN apt-get install rsyslog nginx amanda opensshd
  • 20. Dockerized Host syslogd nginx backup-agent sshd syslog image: FROM ubuntu RUN apt-get install rsyslog nginx image: FROM fedora:f20 RUN yum install nginx backup-agent image: FROM ubuntu RUN apt-get install amanda sshd image: FROM debian RUN apt-get install opensshd
  • 21. Do it! ‣ Build an image" ‣ Run it locally ‣ Push it to a registry (public or private) ‣ Run it (automatically!) in CI/CD and staging ‣ Run it in production
  • 22. It’s an image builder.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27. Anatomy of a chef-container run: Image Linux Docker Initiates Creates Container Chef Chef Runs Configures Build Creates Runs Chef Configures Stage 1 Stage 2
  • 28. Do it! ‣ Build an image ‣ Run it locally ‣ Push it to a registry (public or private) ‣ Run it (automatically!) in CI/CD and staging ‣ Run it in production
  • 29. “docker run -t -i —rm=true my-image“ Legend: -t = allocate tty -i = interactive —rm = remove ephemeral filesystem when exiting
  • 31. Do it! ‣ Build an image ‣ Run it locally ‣ Push it to a registry (public or private)" ‣ Run it (automatically!) in CI/CD and staging ‣ Run it in production
  • 33. Do it! ‣ Build an image ‣ Run it locally ‣ Push it to a registry (public or private) ‣ Run it (automatically!) in CI/CD and staging ‣ Run it in production
  • 34. CI services… and others…?
  • 35. $ ID=$(docker build $app-dir) $ docker run —rm=true $ID $ echo $?
  • 36. fig - local orchestration ——fig.yml—— web: build: . command: python app.py ports: - "5000:5000" volumes: - .:/code links: - redis redis: image: orchardup/redis
  • 37. $ ls Dockerfile fig.yml src $ docker run —privileged -v .:/opt/figapp ewindisch/figleaf $ echo $? Legend: —privileged = run “uncontained”. A permissive “firewall”, if you will. -v = provide volume or bind-mount filesystem into container
  • 38. Do it! ‣ Build an image ‣ Run it locally ‣ Push it to a registry (public or private) ‣ Run it (automatically!) in CI/CD and staging ‣ Run it in production
  • 39. $ docker run -t -i —rm=false —restart=“on-failure[:5]” busybox Legend: —restart=Restart policy on exit (no, on-failure[:max-retry], always)
  • 42. Managing them SUCKS needs improvement
  • 43. Management Ecosystem Mesos ClusterHQ Clocker Flynn
  • 45. Configuration / Infrastructure Management • Chef • Puppet • Salt • Ansible • CFEngine • etc…
  • 46. Container Inventory • discoverd / sdutil • serf • skydock • others?
  • 48. • By default the Docker daemon listens on unix:///var/run/docker.sock • Can listen on a TCP socket with TLS 1.0+ Plain-text also possible, but do not use it! (enabled by default with boot2docker) • Used by various community tools: fig, vagrant, ansible, etc.
  • 49. POST /containers/create HTTP/1.1 Content-Type: application/json ! { "Hostname":"", "Domainname": "", "User":"", "Memory":0, "MemorySwap":0, "Env":null, “Cmd":[ "date" ], "Image":"base", “Volumes":{ "/tmp": {} }, "WorkingDir":"", "NetworkDisabled": false, "ExposedPorts":{ "22/tcp": {} }, "RestartPolicy": { "Name": "always" } } HTTP/1.1 201 Created Content-Type: application/json ! { "Id":"e90e34656806" "Warnings":[] }
  • 50. Containers • List containers • Create a container • Inspect a container • List processes running inside a container • Get container logs • Inspect changes on a container's filesystem • Export a container • Resize a container TTY • Start a container • Stop a container • Restart a container • Kill a container • Pause a container • Unpause a container • Attach to a container • Wait a container • Remove a container • Copy files or folders from a container ! !
  • 51. Images • List Images • Create an image • Inspect an image • Get the history of an image • Push an image on the registry • Tag an image into a repository • Remove an image • Search images
  • 52. Misc • Build an image from Dockerfile via stdin • Check auth configuration • Display system-wide information • Show the docker version information • Ping the docker server • Create a new image from a container's changes • Monitor Docker's events • Get a tarball containing all images in a repository • Get a tarball containing all images. • Load a tarball with a set of images and tags into docker • Image tarball format • Exec Create • Exec Start • Exec Resize
  • 53. Q & A @ewindisch