docker containers

Download Docker containers

Post on 19-Jan-2017

302 views

Category:

Software

1 download

Embed Size (px)

TRANSCRIPT

Erni prsentation

DOCKER CONTAINERS

Page #ERNI Innovation in Process and Technology

Technical Talk, No Workshops40 minutes presentation1h live demo

1

ABOUT PAU

Almost 15 years in software development

Main technologies:Professional .NET developerOpensource projects follower

Main interests:Domain Driven Design, Distributed systems, Microservices, Event Sourcing, CQRS, Cloud.And now Docker Containers!

Page #ERNI Innovation in Process and Technology

How I meet docker? 3 months ago, share the knowledge

2

ABOUT YOU?

Page #ERNI Innovation in Process and Technology

Developers, Testers?Windows? Linux?Docker or Containers?SOA? Domain Driven Design?Microservices?Cloud Providers? IAAS , PAAS.NET, Java, OpenSource: Ruby, NodeJs, Python, MongoDb, NgineX3

AGENDA

ACHITECTURES EVOLUTIONKEY TECHNOLOGY : CONTAINERSDISRUPTIVE PRODUCT : DOCKER

DEMO TIME!

Page #ERNI Innovation in Process and Technology

Explain the goal of the talk through the AGENDADocker Containers are important for the present and the future.4

ARCHITECTURE EVOLUTION THE MONOLITH

Page #ERNI Innovation in Process and Technology

Monolith advantatges:Use to themTools RefactoringEasy to get into.

Monolith Problems Frequent DeploysScalingDeveloper intimidationLong commitmentTechnology stack

5

ARCHITECTURE EVOLUTION THE MONOLITH

SHOPPING CARTPRODUCT CATALOGSHIPPING MODULEBILLING MODULE

Page #ERNI Innovation in Process and Technology

Monolith Problems:Frequent DeploysScalingDeveloper intimidationLong commitmentTechnology stack6

ARCHITECTURE EVOLUTION THE MONOLITH

Page #ERNI Innovation in Process and Technology

Monolith Problems:Frequent DeploysScalingDeveloper intimidationLong commitmentTechnology stack

Dont add more developers, even worse dont add more testers move ONDona add more definition of done entries

7

ARCHITECTURE EVOLUTION MICROSERVICES

Page #ERNI Innovation in Process and Technology

Monolith Problems:Frequent DeploysScalingDeveloper intimidationLong commitmentTechnology stack8

ARCHITECTURE EVOLUTION MICROSERVICESUNIX PHILOSOPHYDo one thing and do it well.Place well with the othersUse standard interfaces

Page #ERNI Innovation in Process and Technology

9

ARCHITECTURE EVOLUTION MICROSERVICES

Page #ERNI Innovation in Process and Technology

Monolith Problems:Frequent DeploysScalingDeveloper intimidationLong commitmentTechnology stack10

ARCHITECTURE EVOLUTION

1990sMonolithTight Coupling

2000sNeo MonolithSOALooser Coupling

2010sMicroservicesDecoupled

Page #ERNI Innovation in Process and Technology

Monolith Problems:Frequent DeploysScalingDeveloper intimidationLong commitmentTechnology stack11

SCALING LIMITATIONS PROBLEM

Page #ERNI Innovation in Process and Technology

PROBLEMS:

Frequent DeploysScalingSplit up teamsDeveloper intimidationLong commitmentTechnology stackCoupling

Relational Database > eventually consistent12

DATABASE COUPLING PROBLEM

Page #ERNI Innovation in Process and Technology

Relational Database > eventually consistentCoupling Availability vs ConsistencyCAP Theorem : Resitance to failure.Internet is microservices architecture: failing all the time.13

WHATS WRONG WITH MONOLITHS?

Page #ERNI Innovation in Process and Technology

1M users14

MONOLITH VS MICROSERVICESCOMPLEXITYDEPLOYMENT CYCLETEAMS ORGANIZATIONSCALABILITYTECHNOLOGY STACK

Page #ERNI Innovation in Process and Technology

Conways law: your architecture looks like your team organizations.

15

NETFLIX ARCHITECTURE EVOLUTION

On premises serversOne big application

Cloud (AWS)100s of microservices

Page #ERNI Innovation in Process and Technology

Netflix story16

MICROSERVICES VISUALIZATION EXAMPLES

Page #ERNI Innovation in Process and Technology

17

MICROSERVICES VISUALIZATION EXAMPLES

Page #ERNI Innovation in Process and Technology

18

NETFLIX FIGURES

Page #ERNI Innovation in Process and Technology

19

NETFLIX FIGURES

Page #ERNI Innovation in Process and Technology

Why do you need a microservice architecture?20

GILT FIGURES

Page #ERNI Innovation in Process and Technology

Why do you need a microservice architecture?21

ENTERPRISE CLOUD ADOPTION

Page #ERNI Innovation in Process and Technology

Cloud Providers are in the epicenter of that revolution.

You havent heard about all this yeet? Were almost there.22

ABOUT YOU?

STILL AWAKE??? JUST SOME SLIDES TO GO!

Page #ERNI Innovation in Process and Technology

Docker or Containers?Cloud Providers? IAAS , PAAS

SOA? Domain Driven Design?Microservices?

.NET, Java, OpenSource: Ruby, NodeJs, Python, MongoDb, NgineX23

AGENDA

ACHITECTURES EVOLUTIONKEY TECHNOLOGY : CONTAINERSDISRUPTIVE TECHNOLOGY : DOCKER

DEMO TIME!

Page #ERNI Innovation in Process and Technology

Explain the goal of the talk through the AGENDA24

ENABLING MICROSERVICES ARCHITECTUREs

Page #ERNI Innovation in Process and Technology

Tools come from the guys moving to these architectures. 200925

Key technology: CONTAINERS

Google has been using container technology for over 10 years, starting over 2 billion containers per week

ENABLING MICROSERVICES ARCHITECTUREs

Page #ERNI Innovation in Process and Technology

26

VIRTUALIZATION TECHNOLOGIES

Page #ERNI Innovation in Process and Technology

27

CONTAINERS PROMISES

Faster Uptime Minutes to SecondsSmaller Footprint Gigabytes to MegabytesMore Reliable Deployment Works everywhere.Better Scalability Vertical to Horizontal

Page #ERNI Innovation in Process and Technology

28

AGENDA

ACHITECTURES EVOLUTIONKEY TECHNOLOGY : CONTAINERSDISRUPTIVE TECHNOLOGY : DOCKER

DEMO TIME!

Page #ERNI Innovation in Process and Technology

Explain the goal of the talk through the AGENDA29

DOCKER SOLUTION

Page #ERNI Innovation in Process and Technology

Docker brief history: DotCloud , PAASWorkflow30

DOCKER ECOSYSTEM

Page #ERNI Innovation in Process and Technology

Partnership with all the other players enabling microservices.How an operating system enables microservice?Creating a really small footprint operating service that can run inside a container.31

WINDOWS CONTAINERS COMING SOON

Page #ERNI Innovation in Process and Technology

32

CONTAINERS PROMISES

Page #ERNI Innovation in Process and Technology

33

CONTAINERS PROMISES

Page #ERNI Innovation in Process and Technology

34

QUESTIONS

Page #ERNI Innovation in Process and Technology

AGENDA

ACHITECTURES EVOLUTION : NETFLIX EXAMPLEKEY TECHNOLOGY : CONTAINERSDISRUPTIVE TECHNOLOGY : DOCKER

DEMO TIME!

Page #ERNI Innovation in Process and Technology

Explain the goal of the talk through the AGENDA36

DEMO DOCKER BASICSBuild images, Run containers, DockerHub.Installing DockerImage vs Container.DockerFileBasic commands: ps, images, run, commit, build, version, infoBuild a basic image: nodejs, aspnetWindows containers (optional)

Page #ERNI Innovation in Process and Technology

20 min.37

DEMO DOCKER BASICS

Page #ERNI Innovation in Process and Technology

DEMO DOCKER BASICS

Page #ERNI Innovation in Process and Technology

DEMO IMAGE VS CONTAINER

Page #ERNI Innovation in Process and Technology

DEMO DOCKER TOOLSDOCKER-MACHINEDocker toolbox for Windows and MacOSX (optional)Provisioning on local VM with Windows client.Provisioning on Azure.Provisioning on AWS.

DOCKER-COMPOSEStartup template download.Docker-compose.yml

Page #ERNI Innovation in Process and Technology

20 min41

DEMO DOCKER TOOLS

Page #ERNI Innovation in Process and Technology

DEMO CONTINUOS DELIVERYBASIC CONTINUOS DELIVERY PIPELINE: NODE AND MONGOEnable DockerHub for automated Builds.Configure CircleCI for automated testing.Configure Tutum for containers as a service.

Page #ERNI Innovation in Process and Technology

DEMO CONTINUOS DELIVERY PIPELINE

PUSHHTTP POSTHTTP POSTHTTP POST

Page #ERNI Innovation in Process and Technology

20 min44

DEMO REFERENCESDOCKER BASICS: Build images, Run containers, DockerHub.https://docs.docker.com/installation/ubuntulinux/http://blog.codefresh.io/docker-machine-basics/http://www.fireplacecoders.com/?p=15http://blogs.msdn.com/b/webdev/archive/2015/01/14/running-asp-net-5-applications-in-linux-containers-with-docker.aspxhttps://docs.docker.com/introduction/understanding-docker/

DOCKER-MACHINE: Local and Cloud providershttps://docs.docker.com/installation/azure/https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-docker-machine/https://docs.docker.com/installation/google/http://docs.aws.amazon.com/AmazonECS/latest/developerguide/docker-basics.html#install_dockerhttp://networkstatic.net/docker-machine-provisioning-on-aws/https://alexanderzeitler.com/articles/a-lap-around-aws-and-docker-machine/

Page #ERNI Innovation in Process and Technology

DEMO REFERENCESCONTINUOS INTEGRATION, CONTINUOS DELIVERY PIPELINEhttp://blog.bananacoding.com/blog/development-workflow-using-docker-and-docker-composehttp:

Recommended

View more >