Microservices application deployment with docker

Preview:

Citation preview

Microservices Application Deployment with Docker

#BrownBag Sessions29th Aug 2017

Swapnil Dahiphale

Sr. DevOps Engineer, Crevise Technologies

Agenda

• Microservices

• Containers

• A container pipeline

• Docker-compose

• Use-case

• Demo

Microservices

Containers

“automates the deployment of any application as a lightweight, portable, self-sufficient container that will run virtually anywhere”

What are containers?

OS virtualization

Process isolation

Automation

Images

Why use Docker?

With Docker we can solve many problems

• “it works on my machine”• reducing build & deploy time• Infrastructure configuration – automation!• Libs dependency hell• Cost control and granularity

A container pipelineIT Operations

BaseImage

PatchesUtilities

A container pipelineIT Operations

BaseImage

PatchesUtilities

Ruby

Redis

Logger

A container pipelineIT Operations Developer

BaseImage

PatchesUtilities

Ruby

Redis

Logger

App

A container pipeline

BaseImage

PatchesUtilities

IT Operations Developer

Ruby

Redis

Logger

App

Guest OS

Server

Bins/Libs Bins/Libs

App2App1

$ docker run myimage

MultiContainer Apps is a hussle

Docker-compose

Get an microservices app running in one command!

Use-case

https://github.com/swapnildahiphale/docker-workflow.git

docker-compose file

nginx:

build: ./nginx

links:

- node1:node1

- node2:node2

- node3:node3

ports:

- "80:80"

node1:

build: ./node

links:

- redis

ports:

- "8080"

node2:

build: ./node

links:

- redis

ports:

- "8080"

node3:

build: ./node

links:

- redis

ports:

- "8080"

redis:

image: redis

ports:

- "6379"

Q&A

Demo

Thank You

github.com/swapnildahiphale

Swapnil Dahiphale

@Swapnil2233

swapnil@crevise.com

Recommended