continuous integration and deployment with docker

Post on 21-Jan-2017

271 Views

Category:

Software

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Continuous Integration and Deployment

Ship it! Editing files on serverFTPCapistranogit push

Dev to deployment pipeline HackRun local testsgit pushCI server runs testsDeploy

Oops.. 500 Server Error

Not my problem.

UNIX is case sensitive, OSX is notDifferent versions of packagesDifferent versions of runtimesPermissions problemsNetwork problems

Simple things can go wrong

Containers

Linux Containers (LXC)Shares Kernel on Host Machinevia cgroups can limit CPU, memory, block I/O, network

Fast to boot

Using LXC

Hello Dockerdocker run -d -p 80:80 tutum/wordpress

Docker love-inAmazonDigital OceanRackspaceLinodeMicrosoft

Run anywhereLess vendor lock-inDrives competitionStrong consistencyTrue DevOps

Docker use casesTesting (SOA, microservices)Short lived computation environmentsLong lived application environmentsSoftware experimentation (Docker Hub)

Deployment pipelinegit pushCI Server builds docker imageRun tests inside docker imageCI Server pushes to private Docker HubCI Server notifies Elastic BeanstalkElastic Beanstalk pulls new image and runs it

Everyone is happy

UNIX BeardEnvironment consistencySecurityCan create base imagesControl via Dockerfile

Hipster Developergit push deploymentI AM DEVOPSRemoves environment hellCan focus on code

ClientAWESOME!I have a meeting now.

Thanks!

top related