SlideShare a Scribd company logo
Container as a Service with
Docker
Patrick Chanezon, Docker Inc.
@chanezon
French
Polyglot
Platforms
Software Plumber
San Francisco
Developer Relations
@chanezon
1995 2015
“The future is already here — it's
just not very evenly distributed”
William Gibson, Neuromancer
Docker’s mission is to
build tools of mass innovation
Internet (hardware layer)
Servers Desktops Phones Cars Houses Drones
Network
equipment
Public
transit
TVs
Industrial
facilities
Scientific
instruments
Financial
system
Programmers
Internet (software layer)
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
Internet (hardware layer)
Servers Desktops Phones Cars Houses Drones
Network
equipment
Public
transit
TVs
Industrial
facilities
Scientific
instruments
Financial
system
Programmers
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
App
a software layer to program the internet
Cloud Market
PublicHybridPrivate
IT Pros Devops DevelopersArchitects
Linux Container Ecosystem
flockerglusterfs
weavecalicomidokuracisconuage
Cloud
OS
Plugins
Orchestration
The Docker mission
Build Ship Run
Anywhere
Distributed Applications
10
XaaS Pyramid
Platform As A Service
Infrastructure As A Service
Software
As A Service
Containers as a Service with Docker
Containers as a Service with Docker
5
Goldilocks and the 3 XaaS
Just rightToo highToo low
IaaS PaaS CaaS
5
Goldilocks and the 3 XaaS
Platform As A Service
Infrastructure As A Service
Software
As A Service
Too high
Too low
Just right
Container As A Service
5
Goldilocks and the 3 XaaS
Container As A Service
Infrastructure As A Service
Software
As A Service
Docker Containers as a Service (CaaS)
An IT managed and secure application content and infrastructure
where developers can self service build and deploy applications
The Docker Journey: The Power of AND
To run these Dockerized
applications in production,
teams need to secure and
manage the infrastructure,
apps and service levels
Control
18
Speed and simplicity are the
#1 drivers leading developers
to try Docker
Agility
By default, the Docker
technology, gives apps
(containers) portability across
environments
Portability
Continuous Integration
Pre-production environments deliver only 50%
of the Docker value
Docker Containers as a Service (CaaS)
Lessons learned: Avoid these pitfalls
1
2
3
Developers don’t adopt locked down systems
Existing “end to end” solutions break the
Docker experience
Beware of lock-in and loss of portability
19
Let’s Play: Where’s Whaledo
in Google Container Engine?
$ docker build -t gcr.io/${PROJECT_ID}/hello-node .
$ gcloud docker push gcr.io/${PROJECT_ID}/hello-node
$ gcloud container clusters create hello-world 
--num-nodes 1 
--machine-type g1-small
$ kubectl run hello-node --
image=gcr.io/${PROJECT_ID}/hello-node --port=8080
$ kubectl get services hello-node
$ kubectl scale rc hello-node --replicas=3
https://cloud.google.com/container-engine/docs/tutorials/hello-node
in Kubernetes?
in EC2 Container Service?
$ ecs-cli up --keypair id_rsa --capability-iam 
—size 2 --instance-type t2.medium
create a compose file
$ ecs-cli compose --file hello-world.yml up
$ ecs-cli ps
$ ecs-cli compose --file hello-world.yml scale 2
$ ecs-cli compose --file hello-world.yml service up
http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_CLI_tutorial.html
in Red Hat?
$ ./openshift kube apply -c docker-registry-config.json
OpenShift relies on the concept of Builds to turn your
application source into a runnable Docker image
$ ./openshift kube create buildConfigs -c application-
buildconfig.json
$ curl -s -A "GitHub-Hookshot/github" -H "Content-
Type:application/json" -H "X-Github-Event:push" -d @github-
webhook-example.json
http://localhost:8080/osapi/v1beta1/buildConfigHooks/build100/se
cret101/github
$ ./openshift kube process -c application-template.json |
./openshift kube apply -c -
https://blog.openshift.com/openshift-v3-deep-dive-docker-kubernetes/
in Red Hat?
https://blog.openshift.com/openshift-v3-deep-dive-docker-kubernetes/
in Pivotal Cloud Foundry?
$cf api --skip-ssl-validation api.bosh-lite.com
$cf auth admin admin
$cf create-org diego
$cf target -o diego
$cf create-space diego
$cf target -s diego
$cf push my-app --no-start
$cf start my-app
https://github.com/cloudfoundry-incubator/diego-release
in Pivotal Cloud Foundry?
runC
The Docker CaaS Platform
28
BUILD SHIP RUN
Docker Toolbox
Docker Trusted
Registry
Docker UCP
Docker Hub Docker Tutum
Developer Workflows Secure Content and
Collaboration
Deploy, Manage, Scale
Developers IT Operations
BUILD
Developer Workflows
SHIP
Secure Content & Collaboration
RUN
Deploy, Manage, Scale
Docker CaaS Platform
Docker Containers as a Service platform
30
BUILD
Developer Workflows
SHIP
Registry Services
RUN
Management
Docker Toolbox
Docker Trusted
Registry
Docker Universal
Control Plane
Docker Hub Docker Cloud
Docker Engine
Ecosystem Plugins and Integrations
Characteristics of a CaaS: The Power of AND
31
Address needs of developers and IT ops
Support all stages in application lifecycle
Any language
Any operating system
Any infrastructure
Open APIs and pluggable architecture
Broad ecosystem support
Docker CaaS enables key initiatives
32
Continuous Integration
DevOps
Developer Self Service
Data PipelinesMicroservices Continuous Delivery
Containerization
Hybrid CloudMulti Cloud
Use Case: Decentralized CaaS for hybrid and multi cloud portability
Private datacenter for regulated apps
Central Portal
• Provision resources
• RBAC to VPC / datacenter
• Trusted Registry hosted
application templates
Cloud for all other apps
VPC 1 VPC2
App 1 App 2 App
App 1 App 2 App
Cloud
Portability
App
Portability
Use Case: Centralized CaaS for transformation to DevOps and micro services
After
Authorization
App Registration
Session
Management
Marketplace
Integration
Logging
…more
Trusted RegistryApp Service App Service
App A App B
Auth
…more
App Reg
Marketplace
Logging
Auth
Session
…more
App Reg
Logging
Before
App Teams
App BAuth
App Reg Marketplace
Logging
App Service
Universal Control Plane
App AAuth
App Reg Marketplace
Logging
App Service
App BAuth
App Reg Marketplace
Logging
App Service
App AAuth
App Reg Marketplace
Logging
App Service
Portability
Demos
• Docker Swarm, Compose and networking
• docker 1.10
• swarm 1.1.0
• compose 1.6.0 with networking
Spring Boot App using MongoDB
https://github.com/joshlong/spring-doge
https://github.com/chanezon/docker-tips/orchestration-networking
THANK YOU
Let’s Dockerize a Neo4J App
https://github.com/neo4j-examples/movies-java-spring-data-neo4j-4
• Service Discovery
• https://github.com/gliderlabs/registrator
• https://github.com/hashicorp/consul-template
• https://github.com/ehazlett/interlock
• Persistent volumes with Swarm and Rex Ray on AWS
• http://blog.emccode.com/2015/11/03/use-docker-swarm-with-a-data-
persistence-layer/
• https://github.com/emccode/rexray
• Kubernetes on Swarm
• https://github.com/docker/swarm-frontends
Orchestration projects
• IPVS, Andrey Sibiryov, http://www.slideshare.net/Docker/kernel-load-
balancing-for-docker-containers-using-ipvs
• DNS Service Discovery for Docker Swarm, Ahmet Alp Balkan,
http://www.slideshare.net/Docker/dns-service-discovery-for-docker-swarm
Load Balancing
• Spring Boot, MongoDB, compose, swarm, networking
• https://github.com/joshlong/spring-doge
• https://github.com/chanezon/docker-tips/orchestration-networking
• Java EE 7 / Angular App with Docker Swarm by @mgreau
Compose for build and deploy, Wildfly, Apache, Angular, Mysql, Redis,
batch and API apps
• https://github.com/mgreau/docker4dev-tennistour-app
• Java EE Docker & Kubernetes by @arun-gupta
• https://github.com/javaee-samples/docker-java
Java Examples
• Docs
https://docs.docker.com/engine/userguide/networking/dockerne
tworks/
• Create a Swarm cluster with networking
https://github.com/chanezon/docker-tips/orchestration-
networking
• Networking in compose
https://github.com/docker/compose/blob/master/docs/networki
ng.md
• Nathan Leclaire Seamless Docker Multihost Overlay Networking
on DigitalOcean With Machine, Swarm, and Compose,
Docker networking
• Using Ansible with Docker Machine to Bootstrap Host Nodes
http://nathanleclaire.com/blog/2015/11/10/using-ansible-with-
docker-machine-to-bootstrap-host-nodes/
• Seamless Docker Multihost Overlay Networking on DigitalOcean
With Machine, Swarm, and Compose, RethinkDB
http://nathanleclaire.com/blog/2015/11/17/seamless-docker-
multihost-overlay-networking-on-digitalocean-with-machine-
swarm-and-compose-ft.-rethinkdb/
Nathan’s tips

More Related Content

What's hot (20)

PDF
Taking Docker to Production: What You Need to Know and Decide
Docker, Inc.
 
PDF
Orchestrating Linux Containers while tolerating failures
Docker, Inc.
 
PDF
Introduction to Docker
Aditya Konarde
 
PPTX
Docker Security workshop slides
Docker, Inc.
 
PDF
Docker worshop @Twitter - How to use your own private registry
dotCloud
 
PPTX
Docker 101 Checonf 2016
Patrick Chanezon
 
PDF
Docker, the Future of DevOps
andersjanmyr
 
PPT
Amazon Web Services and Docker
Paolo latella
 
PDF
DockerDay2015: Docker orchestration for sysadmin
Docker-Hanoi
 
PPTX
Integration with Docker and .NET Core
Sriram Hariharan
 
PDF
Docker Birthday #3 - Intro to Docker Slides
Docker, Inc.
 
PPTX
Comprehensive Monitoring for Docker
Christian Beedgen
 
PDF
ContainerDayVietnam2016: Django Development with Docker
Docker-Hanoi
 
PDF
Building Reusable Development Environments with Docker
Revelation Technologies
 
PDF
Introduction to Docker - IndiaOpsUG
Ajeet Singh Raina
 
PDF
Docker serverless v1.0
Thomas Chacko
 
PPTX
Docker Networking : 0 to 60mph slides
Docker, Inc.
 
PDF
Monitoring Dell Infrastructure using Docker & Microservices
Ajeet Singh Raina
 
PDF
Docker Swarm Meetup (15min lightning)
Mike Goelzer
 
PDF
Online Meetup: Why should container system / platform builders care about con...
Docker, Inc.
 
Taking Docker to Production: What You Need to Know and Decide
Docker, Inc.
 
Orchestrating Linux Containers while tolerating failures
Docker, Inc.
 
Introduction to Docker
Aditya Konarde
 
Docker Security workshop slides
Docker, Inc.
 
Docker worshop @Twitter - How to use your own private registry
dotCloud
 
Docker 101 Checonf 2016
Patrick Chanezon
 
Docker, the Future of DevOps
andersjanmyr
 
Amazon Web Services and Docker
Paolo latella
 
DockerDay2015: Docker orchestration for sysadmin
Docker-Hanoi
 
Integration with Docker and .NET Core
Sriram Hariharan
 
Docker Birthday #3 - Intro to Docker Slides
Docker, Inc.
 
Comprehensive Monitoring for Docker
Christian Beedgen
 
ContainerDayVietnam2016: Django Development with Docker
Docker-Hanoi
 
Building Reusable Development Environments with Docker
Revelation Technologies
 
Introduction to Docker - IndiaOpsUG
Ajeet Singh Raina
 
Docker serverless v1.0
Thomas Chacko
 
Docker Networking : 0 to 60mph slides
Docker, Inc.
 
Monitoring Dell Infrastructure using Docker & Microservices
Ajeet Singh Raina
 
Docker Swarm Meetup (15min lightning)
Mike Goelzer
 
Online Meetup: Why should container system / platform builders care about con...
Docker, Inc.
 

Viewers also liked (20)

PDF
The Promise of as-a-Service
Accenture Operations
 
PDF
Kernel load-balancing for Docker containers using IPVS
Docker, Inc.
 
PPTX
Docker introduction
dotCloud
 
PDF
Docker 101: Introduction to Docker
Docker, Inc.
 
PDF
Hyper: 让Pod以VM为边界
Xu Wang
 
PPTX
FP7 - Capability as a Service (CaaS)
CaaS EU FP7 Project
 
PPTX
Rancher March 2016 Online Meetup Containers-as-a-Service with Rancher 1.0
Shannon Williams
 
PDF
Ohs#7 学習API
祐理 大野
 
PDF
Evolution of Linux Containerization
WSO2
 
PDF
Containers, Clusters and Kubernetes - Brendan Burns - Defrag 2014
brendandburns
 
PDF
Architecture microservices avec docker
gcatt
 
PDF
DockerCon SF 2015: From Months to Minutes
Docker, Inc.
 
PPTX
DockerCon14 Performance Characteristics of Traditional VMs vs. Docker Containers
Docker, Inc.
 
PPTX
DockerCon EU 2015: Compute as an Interruption Forget the Servers
Docker, Inc.
 
PPTX
Intro to Docker November 2013
Docker, Inc.
 
PPTX
OpenStack Summit
Docker, Inc.
 
PDF
Building a Platform with Django, Docker and Salt
Docker, Inc.
 
PPTX
Dockerfile Basics Workshop #1
Docker, Inc.
 
PPTX
Intro to Docker October 2013
Docker, Inc.
 
PDF
Test What You Write, Ship What You Test
Docker, Inc.
 
The Promise of as-a-Service
Accenture Operations
 
Kernel load-balancing for Docker containers using IPVS
Docker, Inc.
 
Docker introduction
dotCloud
 
Docker 101: Introduction to Docker
Docker, Inc.
 
Hyper: 让Pod以VM为边界
Xu Wang
 
FP7 - Capability as a Service (CaaS)
CaaS EU FP7 Project
 
Rancher March 2016 Online Meetup Containers-as-a-Service with Rancher 1.0
Shannon Williams
 
Ohs#7 学習API
祐理 大野
 
Evolution of Linux Containerization
WSO2
 
Containers, Clusters and Kubernetes - Brendan Burns - Defrag 2014
brendandburns
 
Architecture microservices avec docker
gcatt
 
DockerCon SF 2015: From Months to Minutes
Docker, Inc.
 
DockerCon14 Performance Characteristics of Traditional VMs vs. Docker Containers
Docker, Inc.
 
DockerCon EU 2015: Compute as an Interruption Forget the Servers
Docker, Inc.
 
Intro to Docker November 2013
Docker, Inc.
 
OpenStack Summit
Docker, Inc.
 
Building a Platform with Django, Docker and Salt
Docker, Inc.
 
Dockerfile Basics Workshop #1
Docker, Inc.
 
Intro to Docker October 2013
Docker, Inc.
 
Test What You Write, Ship What You Test
Docker, Inc.
 
Ad

Similar to Containers as a Service with Docker (20)

PPTX
Docker Container As A Service - JAX 2016
Patrick Chanezon
 
PPTX
Docker Container As A Service - Mix-IT 2016
Patrick Chanezon
 
PPTX
What's New in Docker - February 2017
Patrick Chanezon
 
PPTX
Programming the world with Docker
Patrick Chanezon
 
PDF
Alibaba Cloud Conference 2016 - Docker Enterprise
John Willis
 
PPTX
Docker Enterprise Workshop - Intro
Patrick Chanezon
 
PPTX
Docker Platform and Ecosystem Nov 2015
Patrick Chanezon
 
PDF
Dessi docker kubernetes paas cloud
Massimiliano Dessì
 
PDF
Come costruire una Platform As A Service con Docker, Kubernetes Go e Java
Codemotion
 
PDF
Using Docker Developing And Deploying Software With Containers 1st Edition Ad...
graankloen
 
PDF
Running your dockerized application(s) on AWS Elastic Container Service
Marco Pas
 
PDF
Containers, Docker, and Microservices: the Terrific Trio
Jérôme Petazzoni
 
PPTX
Interop 2017 - Managing Containers in Production
Brian Gracely
 
PDF
Kubernetes or OpenShift - choosing your container platform for Dev and Ops
Tomasz Cholewa
 
PPTX
OpenShift Enterprise 3.1 vs kubernetes
Samuel Terburg
 
PDF
Docker in practice
Geert Pante
 
PPTX
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Patrick Chanezon
 
PDF
Using Docker Developing and Deploying Software with Containers 1st Edition Ad...
younktroyahf
 
PPTX
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Patrick Chanezon
 
Docker Container As A Service - JAX 2016
Patrick Chanezon
 
Docker Container As A Service - Mix-IT 2016
Patrick Chanezon
 
What's New in Docker - February 2017
Patrick Chanezon
 
Programming the world with Docker
Patrick Chanezon
 
Alibaba Cloud Conference 2016 - Docker Enterprise
John Willis
 
Docker Enterprise Workshop - Intro
Patrick Chanezon
 
Docker Platform and Ecosystem Nov 2015
Patrick Chanezon
 
Dessi docker kubernetes paas cloud
Massimiliano Dessì
 
Come costruire una Platform As A Service con Docker, Kubernetes Go e Java
Codemotion
 
Using Docker Developing And Deploying Software With Containers 1st Edition Ad...
graankloen
 
Running your dockerized application(s) on AWS Elastic Container Service
Marco Pas
 
Containers, Docker, and Microservices: the Terrific Trio
Jérôme Petazzoni
 
Interop 2017 - Managing Containers in Production
Brian Gracely
 
Kubernetes or OpenShift - choosing your container platform for Dev and Ops
Tomasz Cholewa
 
OpenShift Enterprise 3.1 vs kubernetes
Samuel Terburg
 
Docker in practice
Geert Pante
 
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Patrick Chanezon
 
Using Docker Developing and Deploying Software with Containers 1st Edition Ad...
younktroyahf
 
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Patrick Chanezon
 
Ad

More from Docker, Inc. (20)

PDF
Containerize Your Game Server for the Best Multiplayer Experience
Docker, Inc.
 
PDF
How to Improve Your Image Builds Using Advance Docker Build
Docker, Inc.
 
PDF
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 
PDF
Securing Your Containerized Applications with NGINX
Docker, Inc.
 
PDF
How To Build and Run Node Apps with Docker and Compose
Docker, Inc.
 
PDF
Hands-on Helm
Docker, Inc.
 
PDF
Distributed Deep Learning with Docker at Salesforce
Docker, Inc.
 
PDF
The First 10M Pulls: Building The Official Curl Image for Docker Hub
Docker, Inc.
 
PDF
Monitoring in a Microservices World
Docker, Inc.
 
PDF
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
Docker, Inc.
 
PDF
Predicting Space Weather with Docker
Docker, Inc.
 
PDF
Become a Docker Power User With Microsoft Visual Studio Code
Docker, Inc.
 
PDF
How to Use Mirroring and Caching to Optimize your Container Registry
Docker, Inc.
 
PDF
Monolithic to Microservices + Docker = SDLC on Steroids!
Docker, Inc.
 
PDF
Kubernetes at Datadog Scale
Docker, Inc.
 
PDF
Labels, Labels, Labels
Docker, Inc.
 
PDF
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
Docker, Inc.
 
PDF
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 
PDF
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
Docker, Inc.
 
PDF
Developing with Docker for the Arm Architecture
Docker, Inc.
 
Containerize Your Game Server for the Best Multiplayer Experience
Docker, Inc.
 
How to Improve Your Image Builds Using Advance Docker Build
Docker, Inc.
 
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 
Securing Your Containerized Applications with NGINX
Docker, Inc.
 
How To Build and Run Node Apps with Docker and Compose
Docker, Inc.
 
Hands-on Helm
Docker, Inc.
 
Distributed Deep Learning with Docker at Salesforce
Docker, Inc.
 
The First 10M Pulls: Building The Official Curl Image for Docker Hub
Docker, Inc.
 
Monitoring in a Microservices World
Docker, Inc.
 
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
Docker, Inc.
 
Predicting Space Weather with Docker
Docker, Inc.
 
Become a Docker Power User With Microsoft Visual Studio Code
Docker, Inc.
 
How to Use Mirroring and Caching to Optimize your Container Registry
Docker, Inc.
 
Monolithic to Microservices + Docker = SDLC on Steroids!
Docker, Inc.
 
Kubernetes at Datadog Scale
Docker, Inc.
 
Labels, Labels, Labels
Docker, Inc.
 
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
Docker, Inc.
 
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
Docker, Inc.
 
Developing with Docker for the Arm Architecture
Docker, Inc.
 

Recently uploaded (20)

PDF
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
PPTX
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
PPTX
The Future of AI & Machine Learning.pptx
pritsen4700
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
PDF
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PPTX
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PPTX
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
PDF
Market Insight : ETH Dominance Returns
CIFDAQ
 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
The Future of AI & Machine Learning.pptx
pritsen4700
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
Market Insight : ETH Dominance Returns
CIFDAQ
 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 

Containers as a Service with Docker

  • 1. Container as a Service with Docker Patrick Chanezon, Docker Inc. @chanezon
  • 4. “The future is already here — it's just not very evenly distributed” William Gibson, Neuromancer
  • 5. Docker’s mission is to build tools of mass innovation
  • 6. Internet (hardware layer) Servers Desktops Phones Cars Houses Drones Network equipment Public transit TVs Industrial facilities Scientific instruments Financial system Programmers Internet (software layer) App App App App App App App App App App App App App App App App App App App App App App App App App App App App
  • 7. Internet (hardware layer) Servers Desktops Phones Cars Houses Drones Network equipment Public transit TVs Industrial facilities Scientific instruments Financial system Programmers App App App App App App App App App App App App App App App App App App App App App App App App App App App App a software layer to program the internet
  • 8. Cloud Market PublicHybridPrivate IT Pros Devops DevelopersArchitects
  • 10. The Docker mission Build Ship Run Anywhere Distributed Applications 10
  • 11. XaaS Pyramid Platform As A Service Infrastructure As A Service Software As A Service
  • 14. 5 Goldilocks and the 3 XaaS Just rightToo highToo low IaaS PaaS CaaS
  • 15. 5 Goldilocks and the 3 XaaS Platform As A Service Infrastructure As A Service Software As A Service Too high Too low Just right Container As A Service
  • 16. 5 Goldilocks and the 3 XaaS Container As A Service Infrastructure As A Service Software As A Service
  • 17. Docker Containers as a Service (CaaS) An IT managed and secure application content and infrastructure where developers can self service build and deploy applications
  • 18. The Docker Journey: The Power of AND To run these Dockerized applications in production, teams need to secure and manage the infrastructure, apps and service levels Control 18 Speed and simplicity are the #1 drivers leading developers to try Docker Agility By default, the Docker technology, gives apps (containers) portability across environments Portability Continuous Integration Pre-production environments deliver only 50% of the Docker value Docker Containers as a Service (CaaS)
  • 19. Lessons learned: Avoid these pitfalls 1 2 3 Developers don’t adopt locked down systems Existing “end to end” solutions break the Docker experience Beware of lock-in and loss of portability 19
  • 21. in Google Container Engine? $ docker build -t gcr.io/${PROJECT_ID}/hello-node . $ gcloud docker push gcr.io/${PROJECT_ID}/hello-node $ gcloud container clusters create hello-world --num-nodes 1 --machine-type g1-small $ kubectl run hello-node -- image=gcr.io/${PROJECT_ID}/hello-node --port=8080 $ kubectl get services hello-node $ kubectl scale rc hello-node --replicas=3 https://cloud.google.com/container-engine/docs/tutorials/hello-node
  • 23. in EC2 Container Service? $ ecs-cli up --keypair id_rsa --capability-iam —size 2 --instance-type t2.medium create a compose file $ ecs-cli compose --file hello-world.yml up $ ecs-cli ps $ ecs-cli compose --file hello-world.yml scale 2 $ ecs-cli compose --file hello-world.yml service up http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_CLI_tutorial.html
  • 24. in Red Hat? $ ./openshift kube apply -c docker-registry-config.json OpenShift relies on the concept of Builds to turn your application source into a runnable Docker image $ ./openshift kube create buildConfigs -c application- buildconfig.json $ curl -s -A "GitHub-Hookshot/github" -H "Content- Type:application/json" -H "X-Github-Event:push" -d @github- webhook-example.json http://localhost:8080/osapi/v1beta1/buildConfigHooks/build100/se cret101/github $ ./openshift kube process -c application-template.json | ./openshift kube apply -c - https://blog.openshift.com/openshift-v3-deep-dive-docker-kubernetes/
  • 26. in Pivotal Cloud Foundry? $cf api --skip-ssl-validation api.bosh-lite.com $cf auth admin admin $cf create-org diego $cf target -o diego $cf create-space diego $cf target -s diego $cf push my-app --no-start $cf start my-app https://github.com/cloudfoundry-incubator/diego-release
  • 27. in Pivotal Cloud Foundry? runC
  • 28. The Docker CaaS Platform 28 BUILD SHIP RUN Docker Toolbox Docker Trusted Registry Docker UCP Docker Hub Docker Tutum Developer Workflows Secure Content and Collaboration Deploy, Manage, Scale
  • 29. Developers IT Operations BUILD Developer Workflows SHIP Secure Content & Collaboration RUN Deploy, Manage, Scale Docker CaaS Platform
  • 30. Docker Containers as a Service platform 30 BUILD Developer Workflows SHIP Registry Services RUN Management Docker Toolbox Docker Trusted Registry Docker Universal Control Plane Docker Hub Docker Cloud Docker Engine Ecosystem Plugins and Integrations
  • 31. Characteristics of a CaaS: The Power of AND 31 Address needs of developers and IT ops Support all stages in application lifecycle Any language Any operating system Any infrastructure Open APIs and pluggable architecture Broad ecosystem support
  • 32. Docker CaaS enables key initiatives 32 Continuous Integration DevOps Developer Self Service Data PipelinesMicroservices Continuous Delivery Containerization Hybrid CloudMulti Cloud
  • 33. Use Case: Decentralized CaaS for hybrid and multi cloud portability Private datacenter for regulated apps Central Portal • Provision resources • RBAC to VPC / datacenter • Trusted Registry hosted application templates Cloud for all other apps VPC 1 VPC2 App 1 App 2 App App 1 App 2 App Cloud Portability App Portability
  • 34. Use Case: Centralized CaaS for transformation to DevOps and micro services After Authorization App Registration Session Management Marketplace Integration Logging …more Trusted RegistryApp Service App Service App A App B Auth …more App Reg Marketplace Logging Auth Session …more App Reg Logging Before App Teams App BAuth App Reg Marketplace Logging App Service Universal Control Plane App AAuth App Reg Marketplace Logging App Service App BAuth App Reg Marketplace Logging App Service App AAuth App Reg Marketplace Logging App Service Portability
  • 35. Demos
  • 36. • Docker Swarm, Compose and networking • docker 1.10 • swarm 1.1.0 • compose 1.6.0 with networking Spring Boot App using MongoDB https://github.com/joshlong/spring-doge https://github.com/chanezon/docker-tips/orchestration-networking
  • 38. Let’s Dockerize a Neo4J App https://github.com/neo4j-examples/movies-java-spring-data-neo4j-4
  • 39. • Service Discovery • https://github.com/gliderlabs/registrator • https://github.com/hashicorp/consul-template • https://github.com/ehazlett/interlock • Persistent volumes with Swarm and Rex Ray on AWS • http://blog.emccode.com/2015/11/03/use-docker-swarm-with-a-data- persistence-layer/ • https://github.com/emccode/rexray • Kubernetes on Swarm • https://github.com/docker/swarm-frontends Orchestration projects
  • 40. • IPVS, Andrey Sibiryov, http://www.slideshare.net/Docker/kernel-load- balancing-for-docker-containers-using-ipvs • DNS Service Discovery for Docker Swarm, Ahmet Alp Balkan, http://www.slideshare.net/Docker/dns-service-discovery-for-docker-swarm Load Balancing
  • 41. • Spring Boot, MongoDB, compose, swarm, networking • https://github.com/joshlong/spring-doge • https://github.com/chanezon/docker-tips/orchestration-networking • Java EE 7 / Angular App with Docker Swarm by @mgreau Compose for build and deploy, Wildfly, Apache, Angular, Mysql, Redis, batch and API apps • https://github.com/mgreau/docker4dev-tennistour-app • Java EE Docker & Kubernetes by @arun-gupta • https://github.com/javaee-samples/docker-java Java Examples
  • 42. • Docs https://docs.docker.com/engine/userguide/networking/dockerne tworks/ • Create a Swarm cluster with networking https://github.com/chanezon/docker-tips/orchestration- networking • Networking in compose https://github.com/docker/compose/blob/master/docs/networki ng.md • Nathan Leclaire Seamless Docker Multihost Overlay Networking on DigitalOcean With Machine, Swarm, and Compose, Docker networking
  • 43. • Using Ansible with Docker Machine to Bootstrap Host Nodes http://nathanleclaire.com/blog/2015/11/10/using-ansible-with- docker-machine-to-bootstrap-host-nodes/ • Seamless Docker Multihost Overlay Networking on DigitalOcean With Machine, Swarm, and Compose, RethinkDB http://nathanleclaire.com/blog/2015/11/17/seamless-docker- multihost-overlay-networking-on-digitalocean-with-machine- swarm-and-compose-ft.-rethinkdb/ Nathan’s tips

Editor's Notes

  • #11: The Docker mission is enable organizations to build, ship and run distributed applications anywhere.
  • #19: Leading to the Docker Journey – What we have learned from the millions of developers that have already traveled this journey is that The promise of agility (speed and flexibility) drew them to Docker, with how quickly they could setup their development environments to the realization that these new containers were now portable to any environment like never before. These two things are what made Docker hugely successful in the developer community with the CI use case. But CI only realizes half of the potential value of Docker because the app pipeline just switches back to a “waterfall” or “over the wall” at deployment. In order for the much loved developer platform to gain widespread adoption in an organization, the right management construct was required. To provide this much needed control, platforms (PaaS) and bundled solutions (i.e. Tectonic) emerged in an attempt to complete the journey but their approach ends up sacrificing portability and agility for the user. Thousands of Docker users chose to not adopt those solutions and instead built it themselves with glue code and bash scripts because they didn’t want to forego the agility and portability that drew them to Docker in the first place. Just a simple search on Github for ‘Docker’ will show the ecosystem of tools written by users and shared with the community So, where do we go from here?
  • #20: To do that, we can accelerate our path by learning from those who have traveled this path before and avoid common pitfalls when investigating solutions. An environment that is too locked down becomes a hassle for developers and adoption will suffer. Shadow IT behavior will emerge and developers will start creating new tools and processes to be able to use the languages they need and complete their work. EXAMPLE: BBC News had a locked down CI environment that did not include the tooling needed by many of the developers so the team created a side process to use the languages they needed. That not only went outside the official systems but then added a few days to each CI job. 2) Many of the existing solutions on the market are either too opinionated of a PaaS or are cobbled together solutions with a number of different products. These solutions can be difficult to deploy and manage over time. More specifically, many of them support the Docker format or take the Docker code and customize it for their solution environment. This can break not only the developer experience but also the ops side of the experience because they only supporting parts of the Docker API – so the user will not experience the desired behavior in all situations. This also breaks the ecosystem because the hundreds of partners building to the API may have compatibility issues against these solutions. 3) Portability is a default requirement for distributed applications. As the content creator, you must retain control of where that app lives and your ability to move it from environment to environment, to a different team and to different infrastructure providers. Other pitfalls… Developers will run entire application lifecycle outside of infra ops (shadow IT) Infrastructure-centric “container solutions” break developer experience Organizational finger-pointing is compounded because of stifled productivity Legacy applications get overlooked Gilt also shares the example where emphasizing control lead to a “cycle of suck” where they were taking longer to ship and with less innovation
  • #30: Local development environments Self service app images Build, Test, Deploy applications Define app behavior and infra needs Registry services for image storage, management and distribution IT Ops maintains library of secure base content Manage role based access to repos/images Management consoles Provision, manage infrastructure resources Monitor, manage, scale infrastructure and applications
  • #32: Docker is the only solution to give you agility, control and portability for all your distributed apps. The right choice in helping transform your business into an agile business. The platform is the only commercially supported Docker solution available on the market today. Other vendors who state they support Docker is not actually providing technical support and maintenance into the Docker product code. Docker is the only commercial yet open platform that gives you the operational flexibility you need. And unlike other solutions, Docker is… Language agnostic: C, Java, Phython, PHP, Go…. Infrastructure agnostic: on-prem, cloud, virtual, bare metal All stages: from dev to test to release engineering to production Any OS: Linux, Windows, Solaris Docker enables agile distributed applications in production to create agile companies
  • #33: So these
  • #34: This leading phahas a hybrid cloud environment and would like to have a portal to completely abstract away the infrastructure details from their app teams. This way in the portal they request compute resources. Depending on if the app is regulated or not, the actual provisioning and deployment will happen to either an AWS VPC or their private datacenter. In addition to the portal, J&J would like to add a central IT managed marketplace to get app templates and images to help the teams get started. Once provisioned, the actual deployment and ongoing management is de-centralized and owned by the application teams. Use Cases - Developer self service - Hybrid cloud portability - Multi cloud environment Why Docker? App portability is a MUST. Over time they want the option to move the DC apps to cthe cloud as regulations change. Additionally they have already added Azure to their environment and would like to be able to move apps to the new clouds.
  • #35: ADP operates in a more traditional centralized IT model where IT manages and operates the application and environment ongoing. ADP looked at Docker as they began their transition to DevOps. They were interested in gaining more efficiencies and re-use of code by moving to a shared services model instead of monoliths with a lot of repeat services. ADP has OpenStack for their private cloud and AWS for their public cloud. As part of the transition, ADP would will setup a central marketplace where the shared services apps are available for the app teams. In the ADP example both the environment and ongoing management remains centralized. Use Cases - Transition to Micro services - Enable Dev Ops - CI/CD Why Docker? Need app portability so they can choose to move across AWS / Openstack