SlideShare a Scribd company logo
1 of 35
Download to read offline
Docker Containers Deep Dive
Best of Red Hat Summit
Will Kinard
October 4, 2016
Agenda
2
• Intro
• Containerization 101
• Use Cases
• Build, Ship, Run
• OpenShift
• Q&A
3
• DevOps Advisory and Implementation
Services
• Docker Consulting and Integration
• CloudBees Jenkins Consulting
About
The Container Enablement Company
• Continuous Integration,
Delivery, and Deployment
• Application Modernization
• Cloud Migration
Container Tech Isn’t New
4
2000
2002
2004
2006
2007
1979
2008
2013
Chroot
Filesystem isolation
FreeBSD Jails
Early container technology
Linux Namespaces
Process isolation
Solaris Zones
Similar to jails; snapshots, cloning
Google Process Containers
Process aggregation for resource management
Linux Control Groups
Process containers renamed and merged into kernel 2.6.24
LXC Linux Containers
Userland tooling
DotCloud  Docker Inc.
Introduction of Docker Open Source Project
Docker Open Source Project
GitHub (github.com/docker/docker)
• 2900+ Contributors
• 10,000+ Active Forks
• 34,000+ Stars
Docker Hub (hub.docker.com)
• 6B+ Image Downloads
• 500,000+ Dockerized Applications
• Exponential growth
5
0
1
2
3
4
5
6
2013 2014 2015 2016
Docker Pulls - Billions
What is a Docker Container ?
• Method to run applications in isolation
• Isolation includes namespacing pid, network, users, restricting
root, cpu and memory limits, and providing separate
filesystem
• Many of the technologies are old, but haven't been packaged
in an easy to use toolset before Docker
6
“Docker containers wrap up a piece of software in a complete filesystem that contains everything it needs
to run: code, runtime, system tools, system libraries – anything you can install on a server.”
(https://www.docker.com/what-docker)
Containerized Deployment and Scaling
Each virtual machine
includes:
- application
- binaries and
libraries
- entire guest
operating system
Containers:
- Include application and all dependencies
- Share kernel with other containers
- Run as an isolated process not tied to any
specific infrastructure
Virtual Machines Containers
7
8
We’re not trying to replace your VMs
Virtual Machine:
Host Virtualization
Containers are used in
partnership with current IaaS
stacks.
Docker and other container
platforms still need a host.
Container:
Application Virtualization
Take advantage of the streamlined
process for VM based IaaS and gain
efficiencies in:
• Higher density workloads
• Scale
• Portability
• Security
9
Portability is Empowering
10
Portability is Empowering
11
Portability is Empowering
12
• Containers are designed to be disposable
• New containers go back to a clean image state
• Running containers write to an isolated space
Immutable
• Data is stored outside of the container
• Separates data from your application
13
Application Development (Build & Ship)
Problem: Code migration issues: Dev  Test  Prod. Painful and slow software delivery.
Solution: Developer Self-Service. Automate and consolidate with Docker.
Docker packages applications and their dependencies into containers to allow for easy transport from a
developers laptop to any target test or prod environment. This accelerates the software lifecycle,
increases reliability, and reduces job time.
- Begin with a “Trusted Known State”
- Control and Approve Content
- Track Promotion CryptographicallyDeveloper
Version
control
Sysadmin
QA / QE
14
Application Modernization / Cloud Migration
Problem: Legacy applications: brittle, and difficult to change/bug fix/upgrade
Hard to scale, obsolete APIs, costly and difficult to support and maintain.
Solution: Microservices architecture. Technology diversity. Modular boundaries.
Mulit-tier applications can be deployed in parts and each tier is an independent container. Each of the containers
can be used for a single service. Legacy applications can be migrated to the cloud through either a “lift & shift” or
“refactoring” methodology, or potentially a combination.
Build
Docker Images
• Images are the definition. They include
the filesystem, environment variables,
and default entry points.
• Containers are an instance of an
image. They isolate the application
from the host, and even from other
containers.
15
Build
Dockerfiles
• Write your image definition in a Dockerfile
16
• Turn that Dockerfile into an image with
• Develop a new app or “lift and shift” your current codebase
• Union file system
• Multiple RO layers are stacked
• Containers add a single RW layer to
isolate changes
• Layers are cached for fast builds
• Layers are named with a hash inside
the engine
17
Docker Images
Docker for Mac / Windows
• Docker tools for the developer
• OS native clients using internally
available virtualization: xhyve and
Hyper-V
• Full Docker CLI from native OS
shell
18
Red Hat Container Dev Kit
• Pre-built container development
environment
• Choice of virtualization platforms:
Virtualbox, Hyper-V, Linux KVM
• Eclipse and docker CLI integration
Ship
Docker Registry (and Hub)
• Push and pull to central registry
19
• Organized as repositories that contain
multiple tags
• Multiple options: run your own, Docker
Hub, OpenShift, 3rd parties
Run
20
• Run your image
• Launches a container base on your image
• Options for:
 Volumes: link external data into the container for persistence
 Networking: bridged, overlay, access with exposed ports
Run
Distributed
21
• Fault tolerant
• Blue/Green Deployment
• Seamless rollbacks
Distributed
Docker Compose
• Packages multiple containers together
• Defines parameters for ‘docker run’
• Configuration is stored in ‘docker-
compose.yml’
• Allows containers to be scaled, but
without orchestration
22
Docker on Red Hat
RHEL
Consistent performance and reliability
Certification and Support
SELinux Security
Atomic Host
• Minimal footprint operating system
• Linux container optimized
• Reliability and security of RHEL
23
Red Hat OpenShift Container Platform V3
OpenShift and Kubernetes add the ability to orchestrate
docker containers across multi-host installations.
24
• Self-service Platform
• Multi-language Support
• Application Persistence
• Automation
• OpenvSwitch Integration
Load Docker Images to OpenShift!
# oc new-project rhsummit
# oc new-app gitlab/gitlab-ce
Thank You!
25
Will Kinard
CTO BoxBoat Technologies
will@boxboat.com
@boxboat
www.boxboat.com/blog
Appendix
26
This is Important
27
28
• Isolated space for a running application
• All containers run on the same kernel unlike a VM
• Eliminates the overhead of an OS and services
Come Again?
Docker Containers – Run… Anywhere?
Linux:
Kernel Version 3.10+
• Ubuntu 13.10+
• Fedora 20+
• RHEL 7+
• CentOS 7.1+
• Gentoo
• ArchLinux
• openSUSE 13.1+
• CRUX 3.0+
Windows (Really!):
• Docker for Windows
• Windows Server 2016 (TP5)
29
Docker for ARM!
Production Operations / Data Center
Problem: Inefficiency of VMs .. O/S duplication… Lengthy boot and replication times.
Hardware, Storage, and Hypervisor costs $$.
Solution: Docker’s containers as a service (CaaS) and orchestration platform. Policy driven architecture.
Deployment flexibility (On-Premise, Cloud, Hybrid).
Docker containers share resources with the host OS, which makes them significantly more efficient than VMs.
Containers can be started and stopped in a fraction of a second. They are lightweight, fast, and maximize
consolidation. Swisscom reduced their VM footprint from 400 to 20 for a database as a service offering, driving
tremendous cost savings.
Control
Manage and secure
at scale
Portability
Frictionless
Movement & Trust
Agility
Innovation at
speed
+ +Build Ship Run
31
32
Isolated
• Isolated filesystem
• Namespace for isolating pids
• cgroups for limiting memory and CPU
• Separate network stack
• Restricted root capabilities
Docker Notary
• Open source project on github
(github.com/docker/notary)
• Trusted cross platform content
distribution
• Platform agnostic in delivering
content
• Publisher key validates integrity
of content
33
Portable
• Run Docker containers
unchanged in any
environment, on any
infrastructure
• Move applications at
will between
environments and
infrastructures
34
At Scale
Docker containers spin up and down in seconds,
making it easy to scale application services to
satisfy peak customer demand, and then reduce
running containers when demand ebbs.
35

More Related Content

What's hot

What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...Simplilearn
 
Docker Compose | Docker Compose Tutorial | Docker Tutorial For Beginners | De...
Docker Compose | Docker Compose Tutorial | Docker Tutorial For Beginners | De...Docker Compose | Docker Compose Tutorial | Docker Tutorial For Beginners | De...
Docker Compose | Docker Compose Tutorial | Docker Tutorial For Beginners | De...Simplilearn
 
Docker introduction
Docker introductionDocker introduction
Docker introductiondotCloud
 
Docker introduction
Docker introductionDocker introduction
Docker introductionGourav Varma
 
OpenShift Virtualization - VM and OS Image Lifecycle
OpenShift Virtualization - VM and OS Image LifecycleOpenShift Virtualization - VM and OS Image Lifecycle
OpenShift Virtualization - VM and OS Image LifecycleMihai Criveti
 
Introduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker CaptainIntroduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker CaptainAjeet Singh Raina
 
Docker 101 : Introduction to Docker and Containers
Docker 101 : Introduction to Docker and ContainersDocker 101 : Introduction to Docker and Containers
Docker 101 : Introduction to Docker and ContainersYajushi Srivastava
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker IntroductionRobert Reiz
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker IntroductionPeng Xiao
 
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!pyrasis
 
Docker: From Zero to Hero
Docker: From Zero to HeroDocker: From Zero to Hero
Docker: From Zero to Herofazalraja
 
A Gentle Introduction To Docker And All Things Containers
A Gentle Introduction To Docker And All Things ContainersA Gentle Introduction To Docker And All Things Containers
A Gentle Introduction To Docker And All Things ContainersJérôme Petazzoni
 
Introduzione a Docker (Maggio 2017) [ITA]
Introduzione a Docker (Maggio 2017) [ITA]Introduzione a Docker (Maggio 2017) [ITA]
Introduzione a Docker (Maggio 2017) [ITA]Valerio Radice
 
Introduction To Docker, Docker Compose, Docker Swarm
Introduction To Docker, Docker Compose, Docker SwarmIntroduction To Docker, Docker Compose, Docker Swarm
Introduction To Docker, Docker Compose, Docker SwarmAn Nguyen
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentationSuresh Kumar
 
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...Brian Grant
 

What's hot (20)

What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
 
Docker Compose | Docker Compose Tutorial | Docker Tutorial For Beginners | De...
Docker Compose | Docker Compose Tutorial | Docker Tutorial For Beginners | De...Docker Compose | Docker Compose Tutorial | Docker Tutorial For Beginners | De...
Docker Compose | Docker Compose Tutorial | Docker Tutorial For Beginners | De...
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
OpenShift Virtualization - VM and OS Image Lifecycle
OpenShift Virtualization - VM and OS Image LifecycleOpenShift Virtualization - VM and OS Image Lifecycle
OpenShift Virtualization - VM and OS Image Lifecycle
 
Kubernetes Basics
Kubernetes BasicsKubernetes Basics
Kubernetes Basics
 
Introduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker CaptainIntroduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker Captain
 
From Zero to Docker
From Zero to DockerFrom Zero to Docker
From Zero to Docker
 
Docker 101 : Introduction to Docker and Containers
Docker 101 : Introduction to Docker and ContainersDocker 101 : Introduction to Docker and Containers
Docker 101 : Introduction to Docker and Containers
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Docker, LinuX Container
Docker, LinuX ContainerDocker, LinuX Container
Docker, LinuX Container
 
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
 
Docker: From Zero to Hero
Docker: From Zero to HeroDocker: From Zero to Hero
Docker: From Zero to Hero
 
A Gentle Introduction To Docker And All Things Containers
A Gentle Introduction To Docker And All Things ContainersA Gentle Introduction To Docker And All Things Containers
A Gentle Introduction To Docker And All Things Containers
 
Introduzione a Docker (Maggio 2017) [ITA]
Introduzione a Docker (Maggio 2017) [ITA]Introduzione a Docker (Maggio 2017) [ITA]
Introduzione a Docker (Maggio 2017) [ITA]
 
Docker.pptx
Docker.pptxDocker.pptx
Docker.pptx
 
Introduction To Docker, Docker Compose, Docker Swarm
Introduction To Docker, Docker Compose, Docker SwarmIntroduction To Docker, Docker Compose, Docker Swarm
Introduction To Docker, Docker Compose, Docker Swarm
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentation
 
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
 

Similar to Docker Containers Deep Dive

Docker 101 - Nov 2016
Docker 101 - Nov 2016Docker 101 - Nov 2016
Docker 101 - Nov 2016Docker, Inc.
 
Intro Docker october 2013
Intro Docker october 2013Intro Docker october 2013
Intro Docker october 2013dotCloud
 
Intro to Docker November 2013
Intro to Docker November 2013Intro to Docker November 2013
Intro to Docker November 2013Docker, Inc.
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013dotCloud
 
DockerCon EU 2015 Barcelona
DockerCon EU 2015 BarcelonaDockerCon EU 2015 Barcelona
DockerCon EU 2015 BarcelonaRoman Dembitsky
 
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep DiveDocker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep DiveDocker, Inc.
 
Intro to Docker October 2013
Intro to Docker October 2013Intro to Docker October 2013
Intro to Docker October 2013Docker, Inc.
 
CONTAINERIZATION WITH DOCKER .pptx
CONTAINERIZATION WITH DOCKER .pptxCONTAINERIZATION WITH DOCKER .pptx
CONTAINERIZATION WITH DOCKER .pptxSanjuGamesphere
 
Docker open stack boston
Docker open stack bostonDocker open stack boston
Docker open stack bostondotCloud
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to DockerAditya Konarde
 
Containers and Microservices for Realists
Containers and Microservices for RealistsContainers and Microservices for Realists
Containers and Microservices for RealistsOracle Developers
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realistsKarthik Gaekwad
 
Using Docker in production: Get started today!
Using Docker in production: Get started today!Using Docker in production: Get started today!
Using Docker in production: Get started today!Clarence Bakirtzidis
 
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker EcosystemDocker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker EcosystemVan Phuc
 

Similar to Docker Containers Deep Dive (20)

Docker
DockerDocker
Docker
 
Docker 101 - Nov 2016
Docker 101 - Nov 2016Docker 101 - Nov 2016
Docker 101 - Nov 2016
 
Docker
DockerDocker
Docker
 
Intro Docker october 2013
Intro Docker october 2013Intro Docker october 2013
Intro Docker october 2013
 
Intro to Docker November 2013
Intro to Docker November 2013Intro to Docker November 2013
Intro to Docker November 2013
 
Docker handons-workshop-for-charity
Docker handons-workshop-for-charityDocker handons-workshop-for-charity
Docker handons-workshop-for-charity
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
 
DockerCon EU 2015 Barcelona
DockerCon EU 2015 BarcelonaDockerCon EU 2015 Barcelona
DockerCon EU 2015 Barcelona
 
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep DiveDocker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
 
Intro to Docker October 2013
Intro to Docker October 2013Intro to Docker October 2013
Intro to Docker October 2013
 
CONTAINERIZATION WITH DOCKER .pptx
CONTAINERIZATION WITH DOCKER .pptxCONTAINERIZATION WITH DOCKER .pptx
CONTAINERIZATION WITH DOCKER .pptx
 
OpenStack Boston
OpenStack BostonOpenStack Boston
OpenStack Boston
 
Docker open stack boston
Docker open stack bostonDocker open stack boston
Docker open stack boston
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Docker slides
Docker slidesDocker slides
Docker slides
 
Containers and Microservices for Realists
Containers and Microservices for RealistsContainers and Microservices for Realists
Containers and Microservices for Realists
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realists
 
OpenStack Summit
OpenStack SummitOpenStack Summit
OpenStack Summit
 
Using Docker in production: Get started today!
Using Docker in production: Get started today!Using Docker in production: Get started today!
Using Docker in production: Get started today!
 
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker EcosystemDocker-Hanoi @DKT , Presentation about Docker Ecosystem
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
 

Recently uploaded

A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 

Recently uploaded (20)

A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 

Docker Containers Deep Dive

  • 1. Docker Containers Deep Dive Best of Red Hat Summit Will Kinard October 4, 2016
  • 2. Agenda 2 • Intro • Containerization 101 • Use Cases • Build, Ship, Run • OpenShift • Q&A
  • 3. 3 • DevOps Advisory and Implementation Services • Docker Consulting and Integration • CloudBees Jenkins Consulting About The Container Enablement Company • Continuous Integration, Delivery, and Deployment • Application Modernization • Cloud Migration
  • 4. Container Tech Isn’t New 4 2000 2002 2004 2006 2007 1979 2008 2013 Chroot Filesystem isolation FreeBSD Jails Early container technology Linux Namespaces Process isolation Solaris Zones Similar to jails; snapshots, cloning Google Process Containers Process aggregation for resource management Linux Control Groups Process containers renamed and merged into kernel 2.6.24 LXC Linux Containers Userland tooling DotCloud  Docker Inc. Introduction of Docker Open Source Project
  • 5. Docker Open Source Project GitHub (github.com/docker/docker) • 2900+ Contributors • 10,000+ Active Forks • 34,000+ Stars Docker Hub (hub.docker.com) • 6B+ Image Downloads • 500,000+ Dockerized Applications • Exponential growth 5 0 1 2 3 4 5 6 2013 2014 2015 2016 Docker Pulls - Billions
  • 6. What is a Docker Container ? • Method to run applications in isolation • Isolation includes namespacing pid, network, users, restricting root, cpu and memory limits, and providing separate filesystem • Many of the technologies are old, but haven't been packaged in an easy to use toolset before Docker 6 “Docker containers wrap up a piece of software in a complete filesystem that contains everything it needs to run: code, runtime, system tools, system libraries – anything you can install on a server.” (https://www.docker.com/what-docker)
  • 7. Containerized Deployment and Scaling Each virtual machine includes: - application - binaries and libraries - entire guest operating system Containers: - Include application and all dependencies - Share kernel with other containers - Run as an isolated process not tied to any specific infrastructure Virtual Machines Containers 7
  • 8. 8 We’re not trying to replace your VMs Virtual Machine: Host Virtualization Containers are used in partnership with current IaaS stacks. Docker and other container platforms still need a host. Container: Application Virtualization Take advantage of the streamlined process for VM based IaaS and gain efficiencies in: • Higher density workloads • Scale • Portability • Security
  • 12. 12 • Containers are designed to be disposable • New containers go back to a clean image state • Running containers write to an isolated space Immutable • Data is stored outside of the container • Separates data from your application
  • 13. 13 Application Development (Build & Ship) Problem: Code migration issues: Dev  Test  Prod. Painful and slow software delivery. Solution: Developer Self-Service. Automate and consolidate with Docker. Docker packages applications and their dependencies into containers to allow for easy transport from a developers laptop to any target test or prod environment. This accelerates the software lifecycle, increases reliability, and reduces job time. - Begin with a “Trusted Known State” - Control and Approve Content - Track Promotion CryptographicallyDeveloper Version control Sysadmin QA / QE
  • 14. 14 Application Modernization / Cloud Migration Problem: Legacy applications: brittle, and difficult to change/bug fix/upgrade Hard to scale, obsolete APIs, costly and difficult to support and maintain. Solution: Microservices architecture. Technology diversity. Modular boundaries. Mulit-tier applications can be deployed in parts and each tier is an independent container. Each of the containers can be used for a single service. Legacy applications can be migrated to the cloud through either a “lift & shift” or “refactoring” methodology, or potentially a combination.
  • 15. Build Docker Images • Images are the definition. They include the filesystem, environment variables, and default entry points. • Containers are an instance of an image. They isolate the application from the host, and even from other containers. 15
  • 16. Build Dockerfiles • Write your image definition in a Dockerfile 16 • Turn that Dockerfile into an image with • Develop a new app or “lift and shift” your current codebase
  • 17. • Union file system • Multiple RO layers are stacked • Containers add a single RW layer to isolate changes • Layers are cached for fast builds • Layers are named with a hash inside the engine 17 Docker Images
  • 18. Docker for Mac / Windows • Docker tools for the developer • OS native clients using internally available virtualization: xhyve and Hyper-V • Full Docker CLI from native OS shell 18 Red Hat Container Dev Kit • Pre-built container development environment • Choice of virtualization platforms: Virtualbox, Hyper-V, Linux KVM • Eclipse and docker CLI integration
  • 19. Ship Docker Registry (and Hub) • Push and pull to central registry 19 • Organized as repositories that contain multiple tags • Multiple options: run your own, Docker Hub, OpenShift, 3rd parties
  • 20. Run 20 • Run your image • Launches a container base on your image • Options for:  Volumes: link external data into the container for persistence  Networking: bridged, overlay, access with exposed ports
  • 21. Run Distributed 21 • Fault tolerant • Blue/Green Deployment • Seamless rollbacks
  • 22. Distributed Docker Compose • Packages multiple containers together • Defines parameters for ‘docker run’ • Configuration is stored in ‘docker- compose.yml’ • Allows containers to be scaled, but without orchestration 22
  • 23. Docker on Red Hat RHEL Consistent performance and reliability Certification and Support SELinux Security Atomic Host • Minimal footprint operating system • Linux container optimized • Reliability and security of RHEL 23
  • 24. Red Hat OpenShift Container Platform V3 OpenShift and Kubernetes add the ability to orchestrate docker containers across multi-host installations. 24 • Self-service Platform • Multi-language Support • Application Persistence • Automation • OpenvSwitch Integration Load Docker Images to OpenShift! # oc new-project rhsummit # oc new-app gitlab/gitlab-ce
  • 25. Thank You! 25 Will Kinard CTO BoxBoat Technologies will@boxboat.com @boxboat www.boxboat.com/blog
  • 28. 28 • Isolated space for a running application • All containers run on the same kernel unlike a VM • Eliminates the overhead of an OS and services Come Again?
  • 29. Docker Containers – Run… Anywhere? Linux: Kernel Version 3.10+ • Ubuntu 13.10+ • Fedora 20+ • RHEL 7+ • CentOS 7.1+ • Gentoo • ArchLinux • openSUSE 13.1+ • CRUX 3.0+ Windows (Really!): • Docker for Windows • Windows Server 2016 (TP5) 29 Docker for ARM!
  • 30. Production Operations / Data Center Problem: Inefficiency of VMs .. O/S duplication… Lengthy boot and replication times. Hardware, Storage, and Hypervisor costs $$. Solution: Docker’s containers as a service (CaaS) and orchestration platform. Policy driven architecture. Deployment flexibility (On-Premise, Cloud, Hybrid). Docker containers share resources with the host OS, which makes them significantly more efficient than VMs. Containers can be started and stopped in a fraction of a second. They are lightweight, fast, and maximize consolidation. Swisscom reduced their VM footprint from 400 to 20 for a database as a service offering, driving tremendous cost savings.
  • 31. Control Manage and secure at scale Portability Frictionless Movement & Trust Agility Innovation at speed + +Build Ship Run 31
  • 32. 32 Isolated • Isolated filesystem • Namespace for isolating pids • cgroups for limiting memory and CPU • Separate network stack • Restricted root capabilities
  • 33. Docker Notary • Open source project on github (github.com/docker/notary) • Trusted cross platform content distribution • Platform agnostic in delivering content • Publisher key validates integrity of content 33
  • 34. Portable • Run Docker containers unchanged in any environment, on any infrastructure • Move applications at will between environments and infrastructures 34
  • 35. At Scale Docker containers spin up and down in seconds, making it easy to scale application services to satisfy peak customer demand, and then reduce running containers when demand ebbs. 35