Top Banner
Copyright © SELA Software & Education Labs, Ltd. | 14-18 Baruch Hirsch St., Bnei Brak 51202, Israel | www.selagroup.com Rotem Or Cloud Solution Architect Sela Group [email protected]
35

Docker Introduction SDP 12-2015

Feb 20, 2017

Download

Software

Rotem Or
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Docker  Introduction  SDP 12-2015

Copyright © SELA Software & Education Labs, Ltd. | 14-18 Baruch Hirsch St., Bnei Brak 51202, Israel | www.selagroup.com

Rotem OrCloud Solution Architect Sela [email protected]

Page 2: Docker  Introduction  SDP 12-2015

History

Page 3: Docker  Introduction  SDP 12-2015

Solomon Hykes

2008 - a Paas (Platform as a service) company Manages Infrastructure for companies and startups 2012 - dotCloud opened source the core technology of the company as a side project named DockerA few month and this little side project became huge

200 contributors 5000 GitHub stars 1000+ tickets 250 pull request

Page 4: Docker  Introduction  SDP 12-2015

Solomon Hykes

180,000,000$

3 years and 5 rounds

Page 5: Docker  Introduction  SDP 12-2015

The ProblemShipping code to server

Page 6: Docker  Introduction  SDP 12-2015

The matrix from hell

Page 7: Docker  Introduction  SDP 12-2015

The Solution

Page 8: Docker  Introduction  SDP 12-2015

Virtual Machine

VSDocker

Containers

Page 9: Docker  Introduction  SDP 12-2015

VM vs Docker

Each virtualized application includes not only the application - which may be only 10s of MB - and the necessary binaries and libraries, but also an entire guest operating system - which may weigh 10s of GB.

Virtual Machines

The Docker Engine container comprises just the application and its dependencies. It runs as an isolated process on the host operating system, sharing the kernel with other containers. Thus, it enjoys the resource isolation and allocation benefits of VMs but is much more portable and efficient.

Docker

Page 10: Docker  Introduction  SDP 12-2015

Docker Hub https://hub.docker.com/

Large CommunityYou can find official docker images from known vendors You can share and download docker containers from any where around the glob other users around the glob

Page 11: Docker  Introduction  SDP 12-2015

Docker Everywhere

Page 12: Docker  Introduction  SDP 12-2015

Docker Everywhere Docker can run on any platform today:

Linux Windows OSXAWS (EC2 Containers)Azure (VM/ Container Service)Rackspace…

Page 13: Docker  Introduction  SDP 12-2015

DemoBasic WebApp

Page 14: Docker  Introduction  SDP 12-2015

DockerFiles

Page 15: Docker  Introduction  SDP 12-2015

Docker File – Definition of a container FROM ubuntu:14.04RUN \ apt-get update && \ apt-get -y install apache2

ADD index.html /var/www/html/index.html

EXPOSE 80

CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]

Page 16: Docker  Introduction  SDP 12-2015

Docker

Compose

Page 17: Docker  Introduction  SDP 12-2015

Fig == Docker ComposeFigDocker Compose Run and manage multiple containers from script Linking between containers Exposing portsVolumes

Page 18: Docker  Introduction  SDP 12-2015

Docker Compose YML file web: build: . command: python app.py ports: - "5000:5000“ volumes: - .:/code links: - redisredis: image: redis

Page 19: Docker  Introduction  SDP 12-2015

DemoBasic WebApp + Scaling

Page 20: Docker  Introduction  SDP 12-2015

DockerCluster

Management

Page 21: Docker  Introduction  SDP 12-2015

Docker swarm Swarm is a simple way to setup and deploy docker containers on multiple servers using both docker and composeYou run your cluster in very much the same way you would run a single container or compose file Swarm will handle all the discovery and port configuration for you Select the most available recourses on your cluster to deploy your container

Page 22: Docker  Introduction  SDP 12-2015

MesosMesos is a open source software originally developed at the University of California at Berkeley. It sits between the application layer and the operating system and makes it easier to deploy and manage applications in large-scale clustered environments more 

Page 23: Docker  Introduction  SDP 12-2015

DockerIn the

Cloud

Page 24: Docker  Introduction  SDP 12-2015

Run docker on your favorite cloud Docker is running in the cloud , and it keeps spreading out

Microsoft AzureAmazon EC2Google Cloud PlatformRackspace CloudIBM SoftLayer cloudJoyent Public Cloud… many others

Page 25: Docker  Introduction  SDP 12-2015

AzureAzure VM Azure Container Service

Amazon AWSEC2 VMEC2 Container Service

GoogleCompute EngineContainer Engine

Page 26: Docker  Introduction  SDP 12-2015

AzureSwarm is a simple way to setup and deploy docker containers on multiple servers using both docker and composeYou run your cluster in very much the same way you would run a single container or compose file Swarm will handle all the discovery and port configuration for you Select the most available recourses on your cluster to deploy your container

Page 27: Docker  Introduction  SDP 12-2015

TutumDocker has acquired Tutum earlier this year Tutum provides a container management service and tutum provide the supporting tier at docker You can connect to any cloud provider and manage all your resources from tutum https://www.tutum.co/

Page 28: Docker  Introduction  SDP 12-2015

DemoTutum

Page 29: Docker  Introduction  SDP 12-2015

DockerFrom

Dev To Production

Page 30: Docker  Introduction  SDP 12-2015

DevThe developer knows best what his server needs. When he writes the application directly on containers the containers can be cloned to any environment with 0 effort No more “But It works my laptop” in a middle of a major deployment

Page 31: Docker  Introduction  SDP 12-2015

TestUse docker to spin a a full testing environment on any machine server or cloud in just a few clicksMinimize the testing effort for different environments

Page 32: Docker  Introduction  SDP 12-2015

OpsWhen Ops works with containers they don’t ever deal with the internal server configuration or settings Free to manage the infrastructure if there is any and manage the cluster health and scaling

Page 33: Docker  Introduction  SDP 12-2015

ProductionManage your production in the most flexible way Scale in millisecondsNever be tied to a specific provider Work in sync on multiple clouds

Page 34: Docker  Introduction  SDP 12-2015

Skateboarding is not a crime

Page 35: Docker  Introduction  SDP 12-2015

Questions