SlideShare a Scribd company logo
Brett Inman
Senior Infrastructure Engineer, Docker
Docker on Docker:
Leveraging Kubernetes In
Docker EE
Manish Tomar
Senior Software Engineer, Docker
v
Using Docker EE at Docker Inc
● We are a customer
○ SaaS and internal workloads
● Sharing what we’ve learned
○ Best practices, tips
● Dogfooding
○ Better product
So?
● Background
● Planning Process for EE2.0
● Infrastructure Preparation
● Application Migration
● EE and Kube Features
Agenda
● EE - Docker Enterprise Edition
● UCP - Universal Control Plane
● DTR - Docker Trusted Registry
● SaaS - Software as a Service, e.g. Docker Hub
Acronyms
Disclaimer
● >200 hosts in production on EE
● >100 microservices
● Hub/Store/Cloud
○ 1 billion pulls every ~2 weeks
● Web properties (www, blog, etc)
● Build/CI systems
Running on EE
Provide a self-service
container platform.
Role of Infrastructure
Interfaces for our users
Role of Infrastructure
● Docker EE - Swarm and Kubernetes
● Logging
● Metrics and Monitoring
Use the platform to run
applications and provide
services.
Role of Dev
● Goal: provide real-world feedback pre-release
● Cross-functional
● Started in Summer 2016
● EE 2.0 - focus on Kubernetes
Dogfooding
v
Planning for EE 2.0 / Kubernetes
Planning
● Milestones - assign owners and dates
● Weekly syncs
● Common slack channel #dogfooding
● Release blocker
Planning - milestones
Create test
cluster
Deploy EE TP
to test cluster
Deploy swarm
workloads to
test cluster
k8s routing
setup
Deploy k8s
workloads to
test cluster
Deploy EE RC
to staging
Deploy k8s
workloads to
staging
Deploy EE RC
to production
Soak test GA
File issues
v
Infra prep for EE2 and Kubernetes
● Smaller clone of existing environments
● Make modifications to infra code
● PR changes back into stage/prod
Test cluster
Sizing
● UCP Managers now running
kube containers
● Minimum: 8GB
● Recommended: 16GB
Hosts per orchestrator
Node Node Node
Node
Manager
hub
Node
hub hub-k8s hub-k8s
Node
Manager
Node
Manager
UCP Collection: /hub UCP Collection: /hub-k8s
Kube namespace: hub-k8s
● Calico
● Kubernetes concepts
○ Ingress Controllers
■ early, limited customization
○ Nodeport
■ simple building block
Networking
hub.docker.com:443
{ip_haproxy_node_x}:4321
{ip_routing_node_y}:32775
{calico_ip_hub_pod_z}:80
Calico
nodeport
service
● Prometheus
○ every in-house application exposes a /metrics endpoint
○ exporters for third-party applications
● Service discovery
○ consul
○ kube api
Metrics
scrape_configs:
- job_name: 'kubernetes-pods'
kubernetes_sd_configs:
- role: pod
api_server: https://ucp.{{ env "STACK" }}.domain.io:6443
bearer_token: {{ KUBE_TOKEN }}
scheme: https
Kubernetes service discovery in Prometheus
Prometheus scrape config
Logging happens at the engine level - no change
Logging
v
Upgrade and Migration
Upgrading UCP
docker container run --rm -it 
--name ucp 
-v /var/run/docker.sock:/var/run/docker.sock 
docker/ucp:3.0.1 
upgrade --interactive
● Images must be accessible on EVERY node
● No down nodes in UCP cluster
● Ubuntu 14.04 - see release notes for shared mounts
● Manager load balancing - kube API port 6443
● Kube DNS
Gotchas and Notes
Choosing applications
Low Traffic
Non-Critical
High Traffic
Non-Critical
Low Traffic
Critical
High Traffic
Critical
Choosing applications
Low Traffic
Non-Critical notifications
Choosing applications
Low Traffic
Non-Critical
High Traffic
Non-Critical registry2sns
● No application code change
● No Dockerfile change
● No Environment changes
What didn’t change
● K8S yaml files add
○ Deployment and Service object
● Registry secrets
● All in Source control
What did change
K8S deployment object
kind: Deployment
..
spec:
...
template:
metadata:
labels:
app: registry2sns
spec:
imagePullSecrets:
- name: saasdeploycreds
containers:
- name: web
image: docker/registry2sns:1093.0.0
ports:
...
K8S Service object
apiVersion: v1
kind: Service
metadata:
name: registry2sns
labels:
app: registry2sns
spec:
type: NodePort
ports:
- port: 80
nodePort: 32769
selector:
app: registry2sns
K8S Service object
apiVersion: v1
kind: Service
metadata:
name: registry2sns
labels:
app: registry2sns
spec:
type: NodePort
ports:
- port: 80
nodePort: 32769
selector:
app: registry2sns
kind: Deployment
..
spec:
...
template:
metadata:
labels:
app: registry2sns
spec:
imagePullSecrets:
- name: saasdeploycreds
containers:
- name: web
image: docker/registry2sns:1093.0.0
ports:
...
● Test requests against k8s pods
● Service backed by swarm containers and k8s pods
● Change in deploy tooling
Testing App Migration to K8S
v
Leveraging EE and Kubernetes
Kubernetes api
• kubectl
• k8s api server
• RBAC
Docker api
• Docker cli
• Swarm
• RBAC
Web UI
• Monitoring
• Configuration
• Single pane
UCP Interfaces
Resource Sets
Node Node Node
Node
Manager
hub
Node
hub hub-k8s hub-k8s
Node
Manager
Node
Manager
UCP Collection: /hub UCP Collection: /hub-k8s
Kube namespace: hub-k8s
Airboss
Based on engine labels:
● Set node orchestrator
● Create UCP collection
● Add node to UCP collection
● Apply collection label in kube
● Create kube namespace
● Create annotation linking
collection label to namespace
Pods
● Deploy containers together
● Useful for
○ breaking up monoliths
■ localhost
■ sharing volumes
○ metric exporters
CronJobs
● Batch processing
● Moving system services into containers
*/5 * * * *
Dogfooding
10 P0/P1 fixes and improvements for EE2.0
162 total bugs and feature requests
Takeaways
● Planning - milestones, communication
● Infrastructure
○ Sizing
○ Resource sets
○ Routing
○ Metrics/Monitoring
○ Gotchas and Notes
● Migration process
● Leverage EE and Kube features
Takeaways
v
Go try it!
Hosted Trial: trial.docker.com
EE trial licenses: store.docker.com

More Related Content

What's hot (20)

PDF
Considerations for operating docker at scale
Docker, Inc.
 
PDF
How to accelerate docker adoption with a simple and powerful user experience
Docker, Inc.
 
PDF
Android Meets Docker
Docker, Inc.
 
PDF
Kubernetes in Docker
Docker, Inc.
 
PDF
DockerCon EU 2015: Shipping Manifests, Bill of Lading and Docker Metadata and...
Docker, Inc.
 
PDF
Docker on Docker
Docker, Inc.
 
PDF
Activision's Skypilot: Delivering Amazing Game Experiences Through Containeri...
Docker, Inc.
 
PPTX
Docker Online Meetup: Announcing Docker CE + EE
Docker, Inc.
 
PDF
Docker Platform Internals: Taking runtimes and image creation to the next lev...
Docker, Inc.
 
PDF
Kubernetes extensibility
Docker, Inc.
 
PDF
DockerCon EU 2015: Trading Bitcoin with Docker
Docker, Inc.
 
PDF
Production sec ops with kubernetes in docker
Docker, Inc.
 
PDF
DCEU 18: State of the Docker Engine
Docker, Inc.
 
PDF
DCSF19 How To Build Your Containerization Strategy
Docker, Inc.
 
PDF
Docker storage designing a platform for persistent data
Docker, Inc.
 
PDF
Building your production tech stack for docker container platform
Docker, Inc.
 
PDF
Building Your Docker Swarm Tech Stack
Bret Fisher
 
PDF
Packaging software for the distribution on the edge
Docker, Inc.
 
PPTX
DockerCon EU 2015: What's New with Docker Trusted Registry
Docker, Inc.
 
PPTX
Enabling Production Grade Containerized Applications through Policy Based Inf...
Docker, Inc.
 
Considerations for operating docker at scale
Docker, Inc.
 
How to accelerate docker adoption with a simple and powerful user experience
Docker, Inc.
 
Android Meets Docker
Docker, Inc.
 
Kubernetes in Docker
Docker, Inc.
 
DockerCon EU 2015: Shipping Manifests, Bill of Lading and Docker Metadata and...
Docker, Inc.
 
Docker on Docker
Docker, Inc.
 
Activision's Skypilot: Delivering Amazing Game Experiences Through Containeri...
Docker, Inc.
 
Docker Online Meetup: Announcing Docker CE + EE
Docker, Inc.
 
Docker Platform Internals: Taking runtimes and image creation to the next lev...
Docker, Inc.
 
Kubernetes extensibility
Docker, Inc.
 
DockerCon EU 2015: Trading Bitcoin with Docker
Docker, Inc.
 
Production sec ops with kubernetes in docker
Docker, Inc.
 
DCEU 18: State of the Docker Engine
Docker, Inc.
 
DCSF19 How To Build Your Containerization Strategy
Docker, Inc.
 
Docker storage designing a platform for persistent data
Docker, Inc.
 
Building your production tech stack for docker container platform
Docker, Inc.
 
Building Your Docker Swarm Tech Stack
Bret Fisher
 
Packaging software for the distribution on the edge
Docker, Inc.
 
DockerCon EU 2015: What's New with Docker Trusted Registry
Docker, Inc.
 
Enabling Production Grade Containerized Applications through Policy Based Inf...
Docker, Inc.
 

Similar to Docker on docker leveraging kubernetes in docker ee (20)

PDF
Scaling docker with kubernetes
Liran Cohen
 
TXT
Introduction about Kubernates Cluster
♛Kumar Aneesh♛
 
PDF
DCSF19 How Docker Simplifies Kubernetes for the Masses
Docker, Inc.
 
PPTX
Kubernetes Intro @HaufeDev
Haufe-Lexware GmbH & Co KG
 
PPTX
Kubernetes Introduction
Martin Danielsson
 
PPTX
Docker and kubernetes
Dongwon Kim
 
PPTX
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Patrick Chanezon
 
PDF
DEVOPS UNIT 4 docker and services commands
billuandtanya
 
PPTX
Kubernetes: від знайомства до використання у CI/CD
Stfalcon Meetups
 
PDF
Deploying PostgreSQL on Kubernetes
Jimmy Angelakos
 
PPTX
It's not too late to learn about k8s
Cesar Tron-Lozai
 
PDF
Using kubernetes to lose your fear of using containers
josfuecas
 
PDF
Docker Indy: Dockercon 2019 Recap and Docker CLI Plugins
ehazlett
 
PPTX
Kubernetes Introduction
Eric Gustafson
 
PDF
Kubernetes - Starting with 1.2
William Stewart
 
PDF
KubeCon 2017: Kubernetes from Dev to Prod
Subhas Dandapani
 
PDF
DCEU 18: Docker Enterprise Platform and Architecture
Docker, Inc.
 
PDF
Build Your Own CaaS (Container as a Service)
HungWei Chiu
 
PDF
Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?
panagenda
 
PDF
Kubernetes for HCL Connections Component Pack - Build or Buy?
Martin Schmidt
 
Scaling docker with kubernetes
Liran Cohen
 
Introduction about Kubernates Cluster
♛Kumar Aneesh♛
 
DCSF19 How Docker Simplifies Kubernetes for the Masses
Docker, Inc.
 
Kubernetes Intro @HaufeDev
Haufe-Lexware GmbH & Co KG
 
Kubernetes Introduction
Martin Danielsson
 
Docker and kubernetes
Dongwon Kim
 
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Patrick Chanezon
 
DEVOPS UNIT 4 docker and services commands
billuandtanya
 
Kubernetes: від знайомства до використання у CI/CD
Stfalcon Meetups
 
Deploying PostgreSQL on Kubernetes
Jimmy Angelakos
 
It's not too late to learn about k8s
Cesar Tron-Lozai
 
Using kubernetes to lose your fear of using containers
josfuecas
 
Docker Indy: Dockercon 2019 Recap and Docker CLI Plugins
ehazlett
 
Kubernetes Introduction
Eric Gustafson
 
Kubernetes - Starting with 1.2
William Stewart
 
KubeCon 2017: Kubernetes from Dev to Prod
Subhas Dandapani
 
DCEU 18: Docker Enterprise Platform and Architecture
Docker, Inc.
 
Build Your Own CaaS (Container as a Service)
HungWei Chiu
 
Engage 2020 - Kubernetes for HCL Connections Component Pack - Build or Buy?
panagenda
 
Kubernetes for HCL Connections Component Pack - Build or Buy?
Martin Schmidt
 
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.
 
Ad

Recently uploaded (17)

PPTX
AI presentation for everyone in every fields
dodinhkhai1
 
PPTX
BARRIERS TO EFFECTIVE COMMUNICATION.pptx
shraddham25
 
PPTX
Presentationexpressions You are student leader and have just come from a stud...
BENSTARBEATZ
 
PPTX
presentation on legal and regulatory action
raoharsh4122001
 
PPTX
some leadership theories MBA management.pptx
rkseo19
 
PDF
From Draft to DSN - How to Get your Paper In [DSN 2025 Doctoral Forum Keynote]
vschiavoni
 
PDF
The Origin - A Simple Presentation on any project
RishabhDwivedi43
 
PDF
The Impact of Game Live Streaming on In-Game Purchases of Chinese Young Game ...
Shibaura Institute of Technology
 
PDF
Leveraging the Power of Jira Dashboard.pdf
siddharthshukla742740
 
PPTX
Great-Books. Powerpoint presentation. files
tamayocrisgie
 
PPTX
STURGEON BAY WI AG PPT JULY 6 2025.pptx
FamilyWorshipCenterD
 
PPTX
2025-07-06 Abraham 06 (shared slides).pptx
Dale Wells
 
PDF
Buy Verified Payoneer Accounts — The Ultimate Guide for 2025 (Rank #1 on Goog...
Buy Verified Cash App Accounts
 
PDF
Buy Verified Coinbase Accounts — The Ultimate Guide for 2025 (Rank #1 on Goog...
Buy Verified Cash App Accounts
 
PDF
The Family Secret (essence of loveliness)
Favour Biodun
 
PPTX
Inspired by VeinSense: Supercharge Your Hackathon with Agentic AI
ShubhamSharma2528
 
PPTX
Pastor Bob Stewart Acts 21 07 09 2025.pptx
FamilyWorshipCenterD
 
AI presentation for everyone in every fields
dodinhkhai1
 
BARRIERS TO EFFECTIVE COMMUNICATION.pptx
shraddham25
 
Presentationexpressions You are student leader and have just come from a stud...
BENSTARBEATZ
 
presentation on legal and regulatory action
raoharsh4122001
 
some leadership theories MBA management.pptx
rkseo19
 
From Draft to DSN - How to Get your Paper In [DSN 2025 Doctoral Forum Keynote]
vschiavoni
 
The Origin - A Simple Presentation on any project
RishabhDwivedi43
 
The Impact of Game Live Streaming on In-Game Purchases of Chinese Young Game ...
Shibaura Institute of Technology
 
Leveraging the Power of Jira Dashboard.pdf
siddharthshukla742740
 
Great-Books. Powerpoint presentation. files
tamayocrisgie
 
STURGEON BAY WI AG PPT JULY 6 2025.pptx
FamilyWorshipCenterD
 
2025-07-06 Abraham 06 (shared slides).pptx
Dale Wells
 
Buy Verified Payoneer Accounts — The Ultimate Guide for 2025 (Rank #1 on Goog...
Buy Verified Cash App Accounts
 
Buy Verified Coinbase Accounts — The Ultimate Guide for 2025 (Rank #1 on Goog...
Buy Verified Cash App Accounts
 
The Family Secret (essence of loveliness)
Favour Biodun
 
Inspired by VeinSense: Supercharge Your Hackathon with Agentic AI
ShubhamSharma2528
 
Pastor Bob Stewart Acts 21 07 09 2025.pptx
FamilyWorshipCenterD
 

Docker on docker leveraging kubernetes in docker ee