Solution Consultant [email protected] Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a...

39

Transcript of Solution Consultant [email protected] Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a...

Page 1: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com
Page 2: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

JanBurklSolutionConsultantZend,[email protected]//@[email protected]

Page 3: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Developer'sDream

https://www.justwatch.com/de/Film/Der-Flug-des-Navigators

Page 4: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

1.GetCode2.GetDependencies3.StarttheEngines

Page 5: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

FastForward

Page 6: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

ZendExpressive(+alittleJS)

Page 7: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com
Page 8: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Whathashappened?

http://www.gamona.de/kino-dvd/deadpool-2,autoren-auch-das-sequel-benoetigt-kein-hohes-budget:news.html

Page 9: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

particulum-mobile

https://bitbucket.org/account/user/janatzendteam/projects/PAR

Myexampleproject

Page 10: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

WhatdoIneed?

Page 11: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com
Page 12: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Docker≠VirtualBox

Page 13: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com
Page 14: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

OneDaemon=

OneContainer

Page 15: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

"Inalmostallcases,youshouldonlyrunasingleprocessinasinglecontainer.Decouplingapplicationsintomultiplecontainersmakesitmucheasiertoscalehorizontallyandreusecontainers."

https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/

Page 16: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

DockerCompose

"Composeisatoolfordefiningandrunningmulti-containerDockerapplications."

Page 17: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com
Page 18: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com
Page 19: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Challenge

http://www.foxmovies.com/movies/kingsman-the-secret-service

Page 20: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

dockerrun-d-i-t-p80:80-p\3000:3000-p3001:3001-p\2222:22--namegsdalankent/gsd

Page 21: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

dockerrun-it--rm--namemy-running-script\-v"$PWD":/usr/src/myapp\-w/usr/src/myappphp:7.0-cli\phpyour-script.php

Page 22: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

AndyWeir,TheMartian

Ducttapeworksanywhere.Ducttapeismagicandshouldbeworshipped.

http://the-martian-movie.tumblr.com/post/128648842093/duct-tape-here-duct-tape-there-engineering-on

Page 23: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

docker-compose.ymldocker-compose-setup.yml

(.env)

https://bitbucket.org/janatzendteam/particulum-mobile-master/src/masterbitbu/docker-compose.yml

Page 24: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

docker-compose:helpsmedefining(dev)infrastructure

Page 25: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Makefile

https://bitbucket.org/janatzendteam/particulum-mobile-master/src/master/Makefile

http://90to5.org/5MM/2015/ferris-buellers-day-off-1986/

Page 26: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

make:helpsmecontrollingtheinfrastructure

Page 27: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

ImportantCommands:makestartmakeupmakedownmakecleanmakebuild-dev

Page 28: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

DockerImage-(pullor)build

http://www.theatlantic.com/technology/archive/2013/10/how-realistic-is-the-movie-em-gravity-em/280211/

Page 29: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

DockerHubPrivateDockerRepositoryLocalDockerfileRemoteDockerfile

Page 30: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

FAIL

Page 31: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

MissingBestPracticesDockerUpdatesDockerComposeUpdatesPermissionsPersistentData

Page 32: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Permissions?What'stheproblem?webserverwritesfileswriteaccessforwww-datawww-datanotavailableonhostuseuidandgidoflocaluser(#)

Page 33: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Databaseor

WheretostoremypersistentData?

Page 34: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Volumesmaplocaldirto/var/lib/mysql

Page 35: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

mysql:image:mysql:5.6volumes:#mda=mysql_data_archive-./mda:/mdaenvironment:MYSQL_PASS:admincommand:bash-c"cd/\&&tarxvf/mda/backup.tar\&&/run.sh"

Page 36: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Benefits

Page 37: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

nohugefilestohandleexchangeimageseverystepisdocumentednolessnetworingissues

Page 38: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com
Page 39: Solution Consultant jan.burkl@roguewave.com Jan Burkl€¦ · Jan Burkl Solution Consultant Zend, a Rogue Wave Company jan@zend.com // @5square_de jan.burkl@roguewave.com

Dankeschö[email protected]

@5square_de

https://bitbucket.org/account/user/janatzendteam/projects/PARhttp://5square.de/talks/