Top Banner
INTRODUCTION TO DOCKER ADRIAN MOUAT
29

INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

Jan 13, 2019

Download

Documents

LeTuyen
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: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

INTRODUCTION TODOCKER

ADRIAN MOUAT

Page 2: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

SO WHAT IS DOCKER?

Page 3: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

SIMILAR TO A LIGHTWEIGHTVM

Both provide isolated environments

Docker is much more efficient

64-bit Linux only (currently)

Page 4: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

CONTAINERIZATIONA Docker container is a portable store for a single component

and its dependencies

Page 5: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

THE SHIPPING METAPHORTraditionally, cargo was shipped as "bulk" and "break bulk"

Think sacks of coffee beans, barrels of oil etc.

Lots of manual work

Page 6: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

MEET THE INTERMODALCONTAINER

Holds goods of different shapes and sizes

Shipping company doesn't care as long as it comes in astandard container

Cranes, ships, forklifts, lorries all support standardcontainers

Huge gain in efficiency

Page 7: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

THE SOFTWARE SITUATIONModern applications have lots of components

database, webserver, loadbalancer..

And lots of enivronments

developer's laptop, testing VM, staging server, cloud

Problems moving between them

Page 8: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

MEET THE DOCKERCONTAINER

Put anything you like in a container

Database, Web server, proxy etc

Ship it anywhere

Use the same container in development, testing andproduction

Provides sandboxing

Isolates dependencies

Page 9: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

VMS VS CONTAINERS

Page 10: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

ENOUGH THEORY!

Page 11: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

DEMO TIME!

Page 12: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

CONTAINERIZATIONA Docker image is a portable store for a single component and

its dependencies

Page 13: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

DOCKER IMAGESLike a stopped VMBuilt from DockerfilesList of repeatable stepsMongo Dockerfile

Page 14: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

BUT DOCKER IS MORE THANTHIS

Aims to be an "open platform"Key to this is the Docker Hub

Page 15: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning
Page 16: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

USE CASES

Page 17: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

CONTINUOUS DELIVERYFast deployment pipelineAutomatic testing and integrationSoftware is always production readyCan deploy new version at "push of a button"

Page 18: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

WHERE DOCKER COMES INReduces difference between dev and productionDevops tool

Developers define dependenciesOperations concentrate on hosting containers

Faster system tests

Page 19: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

MICROSERVICESApplication made up of many small independent servicesAs opposed to monolithic applicationsCan easily scale and replace servicesProblems

Deciding where to separate servicesLarger system (more VMs)

Page 20: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

PREREQUISITESRapid ProvisioningBasic MonitoringRapid Application DeploymentDevops Culture

http://martinfowler.com/bliki/MicroservicePrerequisites.html

Page 21: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

WHERE DOCKER COMES INRapid Provisioning

Good cloud supportboth private and public

Greater efficiency means less hardwareRapid Application Deployment

Much faster to spin up containersDesigned to be part of a pipeline

Devops CultureDocker is a DevOps tool!

Page 22: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

WRAPPING APPLICATIONSPutting applications in containerExisting desktop appsGUI and command-lineFor normal end users

Page 23: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

WHY?Easy InstallSafePortableHub for Distribution

Page 24: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

EXAMPLES

Page 25: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning
Page 26: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

DEVELOPMENTENVIRONMENTS

Share pre-configured set-upPlug-ins, source repositories, coding standardsAlso Vagrant

Page 27: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

ERR, THIS?Fit of rage at PowerpointDecided to try reveal.jsHard to install

Node, NPM, Grunt...

Page 28: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

CONCLUSIONContainers are the future!Likely to be ubiquitousWide range of use cases

Some we haven't seen yet

Page 29: INTRODUCTION TO DOCKER - GOTO Conferencegotocon.com/.../2015/Slides/Adrian_Mouat_Introduction_to_Docker.pdf · INTRODUCTION TO DOCKER ... WHERE DOCKER COMES IN Rapid Provisioning

Chief Scientist @ Container Solutions

Writing "Using Docker" for O'Reilly

@adrianmouat

http://www.container-solutions.com