SlideShare a Scribd company logo
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER:
THE ANYWHERE FRAMEWORK
Chris Ciborowski
September, 22 2015
© 2015 Nebulaworks, Inc., All rights reserved.
A BIT ABOUT @CHRISCIBOROWSKI
§  Founder & Managing Partner at Nebulaworks
̶  Technology & Engineering
§  Been working with UNIX my entire career
̶  Solaris and Linux, automation
̶  Open source supporter
§  Large-scale enterprise challenges are my thing
̶  DevOps, scale, performance
2
© 2015 Nebulaworks, Inc., All rights reserved.
A BIT ABOUT NEBULAWORKS
§  We are a new breed of SI
̶  Delivering your code at Speed, Frequency, and Scale
̶  Application Logistics
§  Application Delivery
§  Process Optimization
§  Innovation Support
§  Specializing In:
̶  Containerized Application Delivery (Docker, Kubernetes, Mesos)
̶  DevOps Enablement (CI/CD, workflows)
§  Docker Authorized Consulting & Training Partner
3
© 2015 Nebulaworks, Inc., All rights reserved.
AGENDA
§  Today’s challenges, how does Docker help?
§  Docker, the platform
§  DevOps workflows & challenges
§  Containers in production
§  Extended technology ecosystem
4
© 2015 Nebulaworks, Inc., All rights reserved.
TODAY’S CHALLENGES
§  Time to provision (TTP) apps
§  Many languages and dependencies
§  Monolithic stacks
§  Managing software artifacts
§  Low levels of standardization
5
© 2015 Nebulaworks, Inc., All rights reserved.
How Does
Docker Help?
6
© 2015 Nebulaworks, Inc., All rights reserved.
DEPLOY ANYTHING
§  Web apps
§  Backends
§  SQL, NoSQL
§  Big data
§  Message queues
§  … and more
7
© 2015 Nebulaworks, Inc., All rights reserved.
DEPLOY EVERYWHERE
§  Linux servers
§  VMs or bare metal
§  Any distro
§  Public clouds
8
© 2015 Nebulaworks, Inc., All rights reserved.
DEPLOY 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
9
© 2015 Nebulaworks, Inc., All rights reserved.
HOW?
§  Portable artifacts (images)
§  Platform agnostic
§  Consistent environments
§  Immutable infrastructure
§  No HCL J
10
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER, THE PLATFORM
§  Docker Images
§  Docker Engine
§  Docker Hub/Trusted Registry
§  Docker Swarm
§  Docker Machine
§  Docker Compose
§  Docker Toolbox
11
© 2015 Nebulaworks, Inc., All rights reserved.
HIGH LEVEL VIEW: IT IS A LIGHTWEIGHT VM
§  Own process space
§  Own network interface
§  Can run stuff as root
§  Can have its own /sbin/init (different from the host)
Call it a “machine container”
12
© 2015 Nebulaworks, Inc., All rights reserved.
LOW LEVEL VIEW: IT IS CHROOT ON STEROIDS
§  Can also not have its own /sbin/init
§  Container = isolated process(es)
§  Share kernel with host
§  No device emulation (neither HVM nor PV)
Call it an “application container”
13
© 2015 Nebulaworks, Inc., All rights reserved.
COMPARING VM TO CONTAINER
14
© 2015 Nebulaworks, Inc., All rights reserved.
Different namespaces, different “views” of the Kernel
15
HOW DOES IT WORK?
NAMESPACE ISOLATION
Namespace Function
Mount (mnt) Mount points
UTS Hostname
IPC Interprocess communication
PID Processes in different PID namespaces can have same PID
Network (net) Network devices, IP addresses, routing tables, iptables entries
User Root privileges for operations inside a user namespace but unprivileged
outside the namespace. Not all FS are user namespace aware
© 2015 Nebulaworks, Inc., All rights reserved.
Virtual groupings, limits, priority, accounting
16
§  memory
§  cpu
§  blkio
§  devices
HOW DOES IT WORK?
CONTROL GROUPS
© 2015 Nebulaworks, Inc., All rights reserved.
Let’s Talk
Workflows
17
© 2015 Nebulaworks, Inc., All rights reserved.
NEW WAY TO DEVELOP APPS
18
© 2015 Nebulaworks, Inc., All rights reserved.
DEVOPS WORKFLOW
19
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER DEVELOPER EXAMPLE
20
© 2015 Nebulaworks, Inc., All rights reserved.
WORKFLOW SUMMARY 1/2
§  Work in dev environment (local machine or container)
§  Package dependencies with app code
§  Other services (databases etc.) in containers (and behave just
like the real thing!)
§  Whenever you want to test « for real »:
§  Build in seconds
§  Run instantly
21
© 2015 Nebulaworks, Inc., All rights reserved.
WORKFLOW SUMMARY 2/2
§  Satisfied with your local build?
̶  Push it to a registry (public or private)
̶  Run it (automatically!) in CI/CD
̶  Run it in production
̶  Canary and/or blue/green deployments
̶  Happiness!
§  Something goes wrong? Rollback painlessly!
22
© 2015 Nebulaworks, Inc., All rights reserved.
ADDRESSING DEVOPS CHALLENGES
§  Picking the right model (application centric, workflow centric)
§  Escalation
§  Authoritative repos
§  Configuration and secrets
23
© 2015 Nebulaworks, Inc., All rights reserved.
What About
Production?
24
© 2015 Nebulaworks, Inc., All rights reserved.
NOT QUITE AS EASY AS DEV
§  Understand current to target environment deltas
§  Stack correlation: Logging and monitoring
§  Knowledge of distributed platforms and tooling
§  DevOps workflow centric model FTW
̶  If not, TechOps with strong dev experience
25
© 2015 Nebulaworks, Inc., All rights reserved.
EXAMPLE CONTAINER WORKFLOW
26
Consul Consul-template
/etc/consul-template/haproxy.ctmpl /etc/haproxy/haproxy.cfg
Docker Engine CS
Docker Swarm ManagerDocker Trusted Registry
HAProxy
Registrator
$ docker push $ docker run
TLS Secured TCP:443 TLS Secured TCP:2376
Docker UNIX Socket TCP:8500
TCP:8500
Client Operations
Docker Host Operations
© 2015 Nebulaworks, Inc., All rights reserved.
MANY ITEMS TO CONSIDER
§  Choosing a cluster/scheduler
§  How do you handle networking?
§  Providing secrets, securely
§  Persistent storage
27
© 2015 Nebulaworks, Inc., All rights reserved.
EXTENDED TECHNOLOGY ECOSYSTEM
28
© 2015 Nebulaworks, Inc., All rights reserved.
We’re available to help with your projects
29
§  chris@nebulaworks.com
§  949-584-7589
§  www.nebulaworks.com
§  @nebulaworks
THANKS FOR LISTENING!
© 2015 Nebulaworks, Inc., All rights reserved.
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER ENGINE
§  Open Source engine to commoditize LXC
§  Uses copy-on-write for quick provisioning
§  Written in Go, runs as a daemon, comes with a CLI
§  Everything exposed through a REST API
§  Allows to build images in standard, reproducible way
§  Allows to share images through registries
§  Defines standard format for containers (stack of layers; 1 layer =
tarball+metadata)
31
© 2015 Nebulaworks, Inc., All rights reserved.
Collection of services to make Docker more useful
32
§  Public registry (push/pull your images for free)
§  Private registry (push/pull secret images for $)
§  Automated builds (link github/bitbucket repo; trigger build on
commit)
DOCKER HUB / DOCKER TRUSTED REGISTRY
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER SWARM
§  Native clustering for Docker.
̶  It turns a pool of Docker hosts into a single, virtual host
§  Serves the standard Docker API
̶  Any tool which communicates with a Docker daemon can be used
transparently: Dokku, Compose, Krane, Flynn, Deis, DockerUI,
Shipyard, Drone, Jenkins... and, of course, the Docker client itself
§  Follows "batteries included but removable" principle
̶  Ships with a simple scheduling backend, API will develop to enable
pluggable backends like Mesos
33
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER SWARM
$ docker-machine create –driver virtualbox dev
$ docker-machine create -d virtualbox --swarm --swarm-
master --swarm-discovery token://
14699b753350745b3e59fa985925d193 swarm-master
$ docker-machine create -d virtualbox --swarm --swarm-
discovery token://14699b753350745b3e59fa985925d193
swarm-node-00
$ $(docker-machine env --swarm swarm-master)
Demo!
https://asciinema.org/a/17908
34
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER MACHINE
§  Easily create Docker hosts on your computer, on cloud providers
and inside your own data center
§  It creates servers, installs Docker on them, then configures the
Docker client to talk to them
§  Once your Docker host has been created, it then has a number of
commands for managing them:
̶  Starting, stopping, restarting
̶  Upgrading Docker
̶  Configuring the Docker client to talk to your host
35
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER MACHINE
$ docker-machine create –driver virtualbox test
$ docker-machine ls
$ $(docker-machine env test)
Demo!
https://asciinema.org/a/17907
36
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER COMPOSE
§  Describe your stack with one file: docker-compose.yml
§  Run your stack with one command: docker-compose up
§  Example: run an app with key/value datastore
̶  Python app
̶  Redis
37
© 2015 Nebulaworks, Inc., All rights reserved.
DOCKER COMPOSE
$ docker-compose up
J
Demo!
https://asciinema.org/a/17909
38
© 2015 Nebulaworks, Inc., All rights reserved.
With Docker I can:
39
§  Put my software in containers
§  Run those containers anywhere
§  Create workflows to automatically build containers
§  Easily setup Docker hosts with Machine
§  Use Compose to effortlessly start stacks of containers
§  Run containers on multiple hosts
IN SUMMARY!
Ad

More Related Content

What's hot (20)

The age of orchestration: from Docker basics to cluster management
The age of orchestration: from Docker basics to cluster managementThe age of orchestration: from Docker basics to cluster management
The age of orchestration: from Docker basics to cluster management
Nicola Paolucci
 
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) ItalyClustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Giovanni Toraldo
 
What's New in Docker 1.12?
What's New in Docker 1.12?What's New in Docker 1.12?
What's New in Docker 1.12?
Ajeet Singh Raina
 
Container Orchestration with Docker Swarm
Container Orchestration with Docker SwarmContainer Orchestration with Docker Swarm
Container Orchestration with Docker Swarm
Frederik Mogensen
 
Docker Swarm 0.2.0
Docker Swarm 0.2.0Docker Swarm 0.2.0
Docker Swarm 0.2.0
Docker, Inc.
 
virtualization-vs-containerization-paas
virtualization-vs-containerization-paasvirtualization-vs-containerization-paas
virtualization-vs-containerization-paas
rajdeep
 
Docker and stuff
Docker and stuffDocker and stuff
Docker and stuff
Varun Sharma
 
Service Discovery & Load-Balancing under Docker 1.12.0 @ Docker Meetup #22
Service Discovery & Load-Balancing under Docker 1.12.0 @ Docker Meetup #22Service Discovery & Load-Balancing under Docker 1.12.0 @ Docker Meetup #22
Service Discovery & Load-Balancing under Docker 1.12.0 @ Docker Meetup #22
Ajeet Singh Raina
 
What's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea Luzzardi
What's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea LuzzardiWhat's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea Luzzardi
What's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea Luzzardi
Mike Goelzer
 
Comprehensive Monitoring for Docker
Comprehensive Monitoring for DockerComprehensive Monitoring for Docker
Comprehensive Monitoring for Docker
Christian Beedgen
 
How we dockerized a startup? #meetup #docker
How we dockerized a startup? #meetup #docker How we dockerized a startup? #meetup #docker
How we dockerized a startup? #meetup #docker
Jonathan Martin
 
Wanting distributed volumes - Experiences with ceph-docker
Wanting distributed volumes - Experiences with ceph-dockerWanting distributed volumes - Experiences with ceph-docker
Wanting distributed volumes - Experiences with ceph-docker
Ewout Prangsma
 
Swarm - A Docker Clustering System
Swarm - A Docker Clustering SystemSwarm - A Docker Clustering System
Swarm - A Docker Clustering System
snrism
 
Docker swarm introduction
Docker swarm introductionDocker swarm introduction
Docker swarm introduction
Evan Lin
 
Introction to docker swarm
Introction to docker swarmIntroction to docker swarm
Introction to docker swarm
Hsi-Kai Wang
 
Monitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & MicroservicesMonitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & Microservices
Ajeet Singh Raina
 
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...Deploying containers and managing them on multiple Docker hosts, Docker Meetu...
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...
dotCloud
 
Demystifying puppet
Demystifying puppetDemystifying puppet
Demystifying puppet
Ajeet Singh Raina
 
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
Atlassian
 
Cloudfoundry Overview
Cloudfoundry OverviewCloudfoundry Overview
Cloudfoundry Overview
rajdeep
 
The age of orchestration: from Docker basics to cluster management
The age of orchestration: from Docker basics to cluster managementThe age of orchestration: from Docker basics to cluster management
The age of orchestration: from Docker basics to cluster management
Nicola Paolucci
 
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) ItalyClustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Giovanni Toraldo
 
Container Orchestration with Docker Swarm
Container Orchestration with Docker SwarmContainer Orchestration with Docker Swarm
Container Orchestration with Docker Swarm
Frederik Mogensen
 
Docker Swarm 0.2.0
Docker Swarm 0.2.0Docker Swarm 0.2.0
Docker Swarm 0.2.0
Docker, Inc.
 
virtualization-vs-containerization-paas
virtualization-vs-containerization-paasvirtualization-vs-containerization-paas
virtualization-vs-containerization-paas
rajdeep
 
Service Discovery & Load-Balancing under Docker 1.12.0 @ Docker Meetup #22
Service Discovery & Load-Balancing under Docker 1.12.0 @ Docker Meetup #22Service Discovery & Load-Balancing under Docker 1.12.0 @ Docker Meetup #22
Service Discovery & Load-Balancing under Docker 1.12.0 @ Docker Meetup #22
Ajeet Singh Raina
 
What's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea Luzzardi
What's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea LuzzardiWhat's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea Luzzardi
What's New in Docker 1.12 (June 20, 2016) by Mike Goelzer & Andrea Luzzardi
Mike Goelzer
 
Comprehensive Monitoring for Docker
Comprehensive Monitoring for DockerComprehensive Monitoring for Docker
Comprehensive Monitoring for Docker
Christian Beedgen
 
How we dockerized a startup? #meetup #docker
How we dockerized a startup? #meetup #docker How we dockerized a startup? #meetup #docker
How we dockerized a startup? #meetup #docker
Jonathan Martin
 
Wanting distributed volumes - Experiences with ceph-docker
Wanting distributed volumes - Experiences with ceph-dockerWanting distributed volumes - Experiences with ceph-docker
Wanting distributed volumes - Experiences with ceph-docker
Ewout Prangsma
 
Swarm - A Docker Clustering System
Swarm - A Docker Clustering SystemSwarm - A Docker Clustering System
Swarm - A Docker Clustering System
snrism
 
Docker swarm introduction
Docker swarm introductionDocker swarm introduction
Docker swarm introduction
Evan Lin
 
Introction to docker swarm
Introction to docker swarmIntroction to docker swarm
Introction to docker swarm
Hsi-Kai Wang
 
Monitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & MicroservicesMonitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & Microservices
Ajeet Singh Raina
 
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...Deploying containers and managing them on multiple Docker hosts, Docker Meetu...
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...
dotCloud
 
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
AtlasCamp 2015: The age of orchestration: From Docker basics to cluster manag...
Atlassian
 
Cloudfoundry Overview
Cloudfoundry OverviewCloudfoundry Overview
Cloudfoundry Overview
rajdeep
 

Viewers also liked (11)

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
Johan Janssen
 
Introducing Docker Swarm - the orchestration tool by Docker
Introducing Docker Swarm - the orchestration tool by DockerIntroducing Docker Swarm - the orchestration tool by Docker
Introducing Docker Swarm - the orchestration tool by Docker
Ramit Surana
 
Docker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Docker Ecosystem: Engine, Compose, Machine, Swarm, RegistryDocker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Docker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Mario IC
 
Deploying WSO2 Middleware on Kubernetes
Deploying WSO2 Middleware on KubernetesDeploying WSO2 Middleware on Kubernetes
Deploying WSO2 Middleware on Kubernetes
Imesh Gunaratne
 
Kubernetes on Top of Mesos on Top of DCOS
Kubernetes on Top of Mesos on Top of DCOSKubernetes on Top of Mesos on Top of DCOS
Kubernetes on Top of Mesos on Top of DCOS
Stefan Schimanski
 
Introducción a Docker
Introducción a DockerIntroducción a Docker
Introducción a Docker
Open Canarias
 
DockerCon EU 2015: The Missing Piece: when Docker networking unleashing soft ...
DockerCon EU 2015: The Missing Piece: when Docker networking unleashing soft ...DockerCon EU 2015: The Missing Piece: when Docker networking unleashing soft ...
DockerCon EU 2015: The Missing Piece: when Docker networking unleashing soft ...
Docker, Inc.
 
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Docker, Inc.
 
Orchestrating Docker containers at scale
Orchestrating Docker containers at scaleOrchestrating Docker containers at scale
Orchestrating Docker containers at scale
Maciej Lasyk
 
Orchestration tool roundup kubernetes vs. docker vs. heat vs. terra form vs...
Orchestration tool roundup   kubernetes vs. docker vs. heat vs. terra form vs...Orchestration tool roundup   kubernetes vs. docker vs. heat vs. terra form vs...
Orchestration tool roundup kubernetes vs. docker vs. heat vs. terra form vs...
Nati Shalom
 
Docker 101: Introduction to Docker
Docker 101: Introduction to DockerDocker 101: Introduction to Docker
Docker 101: Introduction to Docker
Docker, Inc.
 
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
Johan Janssen
 
Introducing Docker Swarm - the orchestration tool by Docker
Introducing Docker Swarm - the orchestration tool by DockerIntroducing Docker Swarm - the orchestration tool by Docker
Introducing Docker Swarm - the orchestration tool by Docker
Ramit Surana
 
Docker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Docker Ecosystem: Engine, Compose, Machine, Swarm, RegistryDocker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Docker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Mario IC
 
Deploying WSO2 Middleware on Kubernetes
Deploying WSO2 Middleware on KubernetesDeploying WSO2 Middleware on Kubernetes
Deploying WSO2 Middleware on Kubernetes
Imesh Gunaratne
 
Kubernetes on Top of Mesos on Top of DCOS
Kubernetes on Top of Mesos on Top of DCOSKubernetes on Top of Mesos on Top of DCOS
Kubernetes on Top of Mesos on Top of DCOS
Stefan Schimanski
 
Introducción a Docker
Introducción a DockerIntroducción a Docker
Introducción a Docker
Open Canarias
 
DockerCon EU 2015: The Missing Piece: when Docker networking unleashing soft ...
DockerCon EU 2015: The Missing Piece: when Docker networking unleashing soft ...DockerCon EU 2015: The Missing Piece: when Docker networking unleashing soft ...
DockerCon EU 2015: The Missing Piece: when Docker networking unleashing soft ...
Docker, Inc.
 
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Docker, Inc.
 
Orchestrating Docker containers at scale
Orchestrating Docker containers at scaleOrchestrating Docker containers at scale
Orchestrating Docker containers at scale
Maciej Lasyk
 
Orchestration tool roundup kubernetes vs. docker vs. heat vs. terra form vs...
Orchestration tool roundup   kubernetes vs. docker vs. heat vs. terra form vs...Orchestration tool roundup   kubernetes vs. docker vs. heat vs. terra form vs...
Orchestration tool roundup kubernetes vs. docker vs. heat vs. terra form vs...
Nati Shalom
 
Docker 101: Introduction to Docker
Docker 101: Introduction to DockerDocker 101: Introduction to Docker
Docker 101: Introduction to Docker
Docker, Inc.
 
Ad

Similar to Nebulaworks Docker Overview 09-22-2015 (20)

CA Performance Manager Agility by using Docker Containers for Network Manag...
CA Performance Manager Agility by using Docker Containers for Network Manag...CA Performance Manager Agility by using Docker Containers for Network Manag...
CA Performance Manager Agility by using Docker Containers for Network Manag...
CA Technologies
 
Docker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containersDocker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containers
Dr Ganesh Iyer
 
Cicd.pdf
Cicd.pdfCicd.pdf
Cicd.pdf
ssuser37d481
 
Introduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyIntroduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of Technology
Ajeet Singh Raina
 
Rapid Application Development in the Cloud and On-Premises with Docker
Rapid Application Development in the Cloud and On-Premises with DockerRapid Application Development in the Cloud and On-Premises with Docker
Rapid Application Development in the Cloud and On-Premises with Docker
Niklas Heidloff
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT Campus
Ajeet Singh Raina
 
Developing Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/KubernetesDeveloping Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/Kubernetes
Chakradhar Rao Jonagam
 
Docker 101 describing basic docker usage
Docker 101 describing basic docker usageDocker 101 describing basic docker usage
Docker 101 describing basic docker usage
ZiyanMaraikar1
 
Alles Docker oder Was ?
Alles Docker oder Was ?Alles Docker oder Was ?
Alles Docker oder Was ?
Anatole Tresch
 
Top 5 benefits of docker
Top 5 benefits of dockerTop 5 benefits of docker
Top 5 benefits of docker
John Zaccone
 
Experts Live Europe 2017 - Why you should care about Docker - an introduction
Experts Live Europe 2017 - Why you should care about Docker - an introductionExperts Live Europe 2017 - Why you should care about Docker - an introduction
Experts Live Europe 2017 - Why you should care about Docker - an introduction
Marc Müller
 
MuleSoft Surat Virtual Meetup#35 - Setting up MuleSoft Runtime and Anypoint C...
MuleSoft Surat Virtual Meetup#35 - Setting up MuleSoft Runtime and Anypoint C...MuleSoft Surat Virtual Meetup#35 - Setting up MuleSoft Runtime and Anypoint C...
MuleSoft Surat Virtual Meetup#35 - Setting up MuleSoft Runtime and Anypoint C...
Jitendra Bafna
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
Frederik Mogensen
 
EMC World 2016 - code.09 Introduction to the Docker Platform
EMC World 2016 - code.09 Introduction to the Docker PlatformEMC World 2016 - code.09 Introduction to the Docker Platform
EMC World 2016 - code.09 Introduction to the Docker Platform
{code}
 
A Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using DockerA Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using Docker
Ajeet Singh Raina
 
Galera on kubernetes_no_video
Galera on kubernetes_no_videoGalera on kubernetes_no_video
Galera on kubernetes_no_video
Patrick Galbraith
 
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
Van Phuc
 
01282016 Aerospike-Docker webinar
01282016 Aerospike-Docker webinar01282016 Aerospike-Docker webinar
01282016 Aerospike-Docker webinar
Aerospike, Inc.
 
COP_RoR_QuArrk_Session_Oct_2022.pptx
COP_RoR_QuArrk_Session_Oct_2022.pptxCOP_RoR_QuArrk_Session_Oct_2022.pptx
COP_RoR_QuArrk_Session_Oct_2022.pptx
Nitesh95975
 
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
 
CA Performance Manager Agility by using Docker Containers for Network Manag...
CA Performance Manager Agility by using Docker Containers for Network Manag...CA Performance Manager Agility by using Docker Containers for Network Manag...
CA Performance Manager Agility by using Docker Containers for Network Manag...
CA Technologies
 
Docker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containersDocker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containers
Dr Ganesh Iyer
 
Introduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyIntroduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of Technology
Ajeet Singh Raina
 
Rapid Application Development in the Cloud and On-Premises with Docker
Rapid Application Development in the Cloud and On-Premises with DockerRapid Application Development in the Cloud and On-Premises with Docker
Rapid Application Development in the Cloud and On-Premises with Docker
Niklas Heidloff
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT Campus
Ajeet Singh Raina
 
Developing Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/KubernetesDeveloping Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/Kubernetes
Chakradhar Rao Jonagam
 
Docker 101 describing basic docker usage
Docker 101 describing basic docker usageDocker 101 describing basic docker usage
Docker 101 describing basic docker usage
ZiyanMaraikar1
 
Alles Docker oder Was ?
Alles Docker oder Was ?Alles Docker oder Was ?
Alles Docker oder Was ?
Anatole Tresch
 
Top 5 benefits of docker
Top 5 benefits of dockerTop 5 benefits of docker
Top 5 benefits of docker
John Zaccone
 
Experts Live Europe 2017 - Why you should care about Docker - an introduction
Experts Live Europe 2017 - Why you should care about Docker - an introductionExperts Live Europe 2017 - Why you should care about Docker - an introduction
Experts Live Europe 2017 - Why you should care about Docker - an introduction
Marc Müller
 
MuleSoft Surat Virtual Meetup#35 - Setting up MuleSoft Runtime and Anypoint C...
MuleSoft Surat Virtual Meetup#35 - Setting up MuleSoft Runtime and Anypoint C...MuleSoft Surat Virtual Meetup#35 - Setting up MuleSoft Runtime and Anypoint C...
MuleSoft Surat Virtual Meetup#35 - Setting up MuleSoft Runtime and Anypoint C...
Jitendra Bafna
 
EMC World 2016 - code.09 Introduction to the Docker Platform
EMC World 2016 - code.09 Introduction to the Docker PlatformEMC World 2016 - code.09 Introduction to the Docker Platform
EMC World 2016 - code.09 Introduction to the Docker Platform
{code}
 
A Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using DockerA Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using Docker
Ajeet Singh Raina
 
Galera on kubernetes_no_video
Galera on kubernetes_no_videoGalera on kubernetes_no_video
Galera on kubernetes_no_video
Patrick Galbraith
 
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
Van Phuc
 
01282016 Aerospike-Docker webinar
01282016 Aerospike-Docker webinar01282016 Aerospike-Docker webinar
01282016 Aerospike-Docker webinar
Aerospike, Inc.
 
COP_RoR_QuArrk_Session_Oct_2022.pptx
COP_RoR_QuArrk_Session_Oct_2022.pptxCOP_RoR_QuArrk_Session_Oct_2022.pptx
COP_RoR_QuArrk_Session_Oct_2022.pptx
Nitesh95975
 
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
 
Ad

Recently uploaded (20)

TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 

Nebulaworks Docker Overview 09-22-2015

  • 1. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER: THE ANYWHERE FRAMEWORK Chris Ciborowski September, 22 2015
  • 2. © 2015 Nebulaworks, Inc., All rights reserved. A BIT ABOUT @CHRISCIBOROWSKI §  Founder & Managing Partner at Nebulaworks ̶  Technology & Engineering §  Been working with UNIX my entire career ̶  Solaris and Linux, automation ̶  Open source supporter §  Large-scale enterprise challenges are my thing ̶  DevOps, scale, performance 2
  • 3. © 2015 Nebulaworks, Inc., All rights reserved. A BIT ABOUT NEBULAWORKS §  We are a new breed of SI ̶  Delivering your code at Speed, Frequency, and Scale ̶  Application Logistics §  Application Delivery §  Process Optimization §  Innovation Support §  Specializing In: ̶  Containerized Application Delivery (Docker, Kubernetes, Mesos) ̶  DevOps Enablement (CI/CD, workflows) §  Docker Authorized Consulting & Training Partner 3
  • 4. © 2015 Nebulaworks, Inc., All rights reserved. AGENDA §  Today’s challenges, how does Docker help? §  Docker, the platform §  DevOps workflows & challenges §  Containers in production §  Extended technology ecosystem 4
  • 5. © 2015 Nebulaworks, Inc., All rights reserved. TODAY’S CHALLENGES §  Time to provision (TTP) apps §  Many languages and dependencies §  Monolithic stacks §  Managing software artifacts §  Low levels of standardization 5
  • 6. © 2015 Nebulaworks, Inc., All rights reserved. How Does Docker Help? 6
  • 7. © 2015 Nebulaworks, Inc., All rights reserved. DEPLOY ANYTHING §  Web apps §  Backends §  SQL, NoSQL §  Big data §  Message queues §  … and more 7
  • 8. © 2015 Nebulaworks, Inc., All rights reserved. DEPLOY EVERYWHERE §  Linux servers §  VMs or bare metal §  Any distro §  Public clouds 8
  • 9. © 2015 Nebulaworks, Inc., All rights reserved. DEPLOY 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 9
  • 10. © 2015 Nebulaworks, Inc., All rights reserved. HOW? §  Portable artifacts (images) §  Platform agnostic §  Consistent environments §  Immutable infrastructure §  No HCL J 10
  • 11. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER, THE PLATFORM §  Docker Images §  Docker Engine §  Docker Hub/Trusted Registry §  Docker Swarm §  Docker Machine §  Docker Compose §  Docker Toolbox 11
  • 12. © 2015 Nebulaworks, Inc., All rights reserved. HIGH LEVEL VIEW: IT IS A LIGHTWEIGHT VM §  Own process space §  Own network interface §  Can run stuff as root §  Can have its own /sbin/init (different from the host) Call it a “machine container” 12
  • 13. © 2015 Nebulaworks, Inc., All rights reserved. LOW LEVEL VIEW: IT IS CHROOT ON STEROIDS §  Can also not have its own /sbin/init §  Container = isolated process(es) §  Share kernel with host §  No device emulation (neither HVM nor PV) Call it an “application container” 13
  • 14. © 2015 Nebulaworks, Inc., All rights reserved. COMPARING VM TO CONTAINER 14
  • 15. © 2015 Nebulaworks, Inc., All rights reserved. Different namespaces, different “views” of the Kernel 15 HOW DOES IT WORK? NAMESPACE ISOLATION Namespace Function Mount (mnt) Mount points UTS Hostname IPC Interprocess communication PID Processes in different PID namespaces can have same PID Network (net) Network devices, IP addresses, routing tables, iptables entries User Root privileges for operations inside a user namespace but unprivileged outside the namespace. Not all FS are user namespace aware
  • 16. © 2015 Nebulaworks, Inc., All rights reserved. Virtual groupings, limits, priority, accounting 16 §  memory §  cpu §  blkio §  devices HOW DOES IT WORK? CONTROL GROUPS
  • 17. © 2015 Nebulaworks, Inc., All rights reserved. Let’s Talk Workflows 17
  • 18. © 2015 Nebulaworks, Inc., All rights reserved. NEW WAY TO DEVELOP APPS 18
  • 19. © 2015 Nebulaworks, Inc., All rights reserved. DEVOPS WORKFLOW 19
  • 20. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER DEVELOPER EXAMPLE 20
  • 21. © 2015 Nebulaworks, Inc., All rights reserved. WORKFLOW SUMMARY 1/2 §  Work in dev environment (local machine or container) §  Package dependencies with app code §  Other services (databases etc.) in containers (and behave just like the real thing!) §  Whenever you want to test « for real »: §  Build in seconds §  Run instantly 21
  • 22. © 2015 Nebulaworks, Inc., All rights reserved. WORKFLOW SUMMARY 2/2 §  Satisfied with your local build? ̶  Push it to a registry (public or private) ̶  Run it (automatically!) in CI/CD ̶  Run it in production ̶  Canary and/or blue/green deployments ̶  Happiness! §  Something goes wrong? Rollback painlessly! 22
  • 23. © 2015 Nebulaworks, Inc., All rights reserved. ADDRESSING DEVOPS CHALLENGES §  Picking the right model (application centric, workflow centric) §  Escalation §  Authoritative repos §  Configuration and secrets 23
  • 24. © 2015 Nebulaworks, Inc., All rights reserved. What About Production? 24
  • 25. © 2015 Nebulaworks, Inc., All rights reserved. NOT QUITE AS EASY AS DEV §  Understand current to target environment deltas §  Stack correlation: Logging and monitoring §  Knowledge of distributed platforms and tooling §  DevOps workflow centric model FTW ̶  If not, TechOps with strong dev experience 25
  • 26. © 2015 Nebulaworks, Inc., All rights reserved. EXAMPLE CONTAINER WORKFLOW 26 Consul Consul-template /etc/consul-template/haproxy.ctmpl /etc/haproxy/haproxy.cfg Docker Engine CS Docker Swarm ManagerDocker Trusted Registry HAProxy Registrator $ docker push $ docker run TLS Secured TCP:443 TLS Secured TCP:2376 Docker UNIX Socket TCP:8500 TCP:8500 Client Operations Docker Host Operations
  • 27. © 2015 Nebulaworks, Inc., All rights reserved. MANY ITEMS TO CONSIDER §  Choosing a cluster/scheduler §  How do you handle networking? §  Providing secrets, securely §  Persistent storage 27
  • 28. © 2015 Nebulaworks, Inc., All rights reserved. EXTENDED TECHNOLOGY ECOSYSTEM 28
  • 29. © 2015 Nebulaworks, Inc., All rights reserved. We’re available to help with your projects 29 §  [email protected] §  949-584-7589 §  www.nebulaworks.com §  @nebulaworks THANKS FOR LISTENING!
  • 30. © 2015 Nebulaworks, Inc., All rights reserved.
  • 31. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER ENGINE §  Open Source engine to commoditize LXC §  Uses copy-on-write for quick provisioning §  Written in Go, runs as a daemon, comes with a CLI §  Everything exposed through a REST API §  Allows to build images in standard, reproducible way §  Allows to share images through registries §  Defines standard format for containers (stack of layers; 1 layer = tarball+metadata) 31
  • 32. © 2015 Nebulaworks, Inc., All rights reserved. Collection of services to make Docker more useful 32 §  Public registry (push/pull your images for free) §  Private registry (push/pull secret images for $) §  Automated builds (link github/bitbucket repo; trigger build on commit) DOCKER HUB / DOCKER TRUSTED REGISTRY
  • 33. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER SWARM §  Native clustering for Docker. ̶  It turns a pool of Docker hosts into a single, virtual host §  Serves the standard Docker API ̶  Any tool which communicates with a Docker daemon can be used transparently: Dokku, Compose, Krane, Flynn, Deis, DockerUI, Shipyard, Drone, Jenkins... and, of course, the Docker client itself §  Follows "batteries included but removable" principle ̶  Ships with a simple scheduling backend, API will develop to enable pluggable backends like Mesos 33
  • 34. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER SWARM $ docker-machine create –driver virtualbox dev $ docker-machine create -d virtualbox --swarm --swarm- master --swarm-discovery token:// 14699b753350745b3e59fa985925d193 swarm-master $ docker-machine create -d virtualbox --swarm --swarm- discovery token://14699b753350745b3e59fa985925d193 swarm-node-00 $ $(docker-machine env --swarm swarm-master) Demo! https://asciinema.org/a/17908 34
  • 35. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER MACHINE §  Easily create Docker hosts on your computer, on cloud providers and inside your own data center §  It creates servers, installs Docker on them, then configures the Docker client to talk to them §  Once your Docker host has been created, it then has a number of commands for managing them: ̶  Starting, stopping, restarting ̶  Upgrading Docker ̶  Configuring the Docker client to talk to your host 35
  • 36. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER MACHINE $ docker-machine create –driver virtualbox test $ docker-machine ls $ $(docker-machine env test) Demo! https://asciinema.org/a/17907 36
  • 37. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER COMPOSE §  Describe your stack with one file: docker-compose.yml §  Run your stack with one command: docker-compose up §  Example: run an app with key/value datastore ̶  Python app ̶  Redis 37
  • 38. © 2015 Nebulaworks, Inc., All rights reserved. DOCKER COMPOSE $ docker-compose up J Demo! https://asciinema.org/a/17909 38
  • 39. © 2015 Nebulaworks, Inc., All rights reserved. With Docker I can: 39 §  Put my software in containers §  Run those containers anywhere §  Create workflows to automatically build containers §  Easily setup Docker hosts with Machine §  Use Compose to effortlessly start stacks of containers §  Run containers on multiple hosts IN SUMMARY!