Talk on PHP Day Uruguay about Docker
-
Upload
wellington-silva -
Category
Technology
-
view
458 -
download
2
Transcript of Talk on PHP Day Uruguay about Docker
![Page 1: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/1.jpg)
DockerFrom basics to orchestration
![Page 2: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/2.jpg)
About me
![Page 3: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/3.jpg)
Overview
![Page 4: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/4.jpg)
Overview
● Environment issues● Virtualization● "Containerization"● Docker
○ Install○ Run○ Build○ Host
● Docker Machine● Docker Compose● Questions
![Page 5: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/5.jpg)
Environment Issues
![Page 6: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/6.jpg)
If you do this, you don't receive your:
Environment Issues
![Page 7: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/7.jpg)
Examples:● substr vs mb_substr functions
Environment Issues
![Page 8: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/8.jpg)
Environment Issues
Examples:● substr vs mb_substr functions● short open tag <?=
![Page 9: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/9.jpg)
Environment Issues
Examples:● substr vs mb_substr functions● short open tag <?=● short array syntax (5.3- vs 5.4+): $a=[];
![Page 10: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/10.jpg)
Environment Issues
Examples:● substr vs mb_substr functions● short open tag <?=● short array syntax (5.3- vs 5.4+): $a=[];● some custom installed extension on dev but
not on prod
![Page 11: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/11.jpg)
Virtualization
![Page 12: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/12.jpg)
● 1960 - cpu time sharing (inspiration)
Virtualization - History
![Page 13: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/13.jpg)
Virtualization - History
● 1960 - cpu time sharing (inspiration)● IBM 370 - Designed for virtualization via
software (CP/CMS).
![Page 14: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/14.jpg)
Virtualization - History
● 1960 - cpu time sharing (inspiration)● IBM 370 - Designed for virtualization via
software (CP/CMS).● IBM z/VM - first success case (via hardware)
![Page 15: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/15.jpg)
Virtualization - History
● 1960 - cpu time sharing (inspiration)● IBM 370 - Designed for virtualization via
software (CP/CMS).● IBM z/VM - first success case (via hardware)● 1990+ - Hypervisors: VMWare, Xen, KVM,
VirtualBox, etc...
![Page 16: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/16.jpg)
Virtualization - Hypervisors
![Page 17: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/17.jpg)
Virtualization - Stack
![Page 18: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/18.jpg)
Virtualization
● Standard environments
![Page 19: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/19.jpg)
Virtualization
● Standard environments
● Improve resources usage
![Page 20: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/20.jpg)
Virtualization
● Standard environments
● Improve resources usage
● Data recovery
![Page 21: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/21.jpg)
Virtualization
● If host hardware fails every VMs fail
● Standard environments
● Improve resources usage
● Data recovery
![Page 22: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/22.jpg)
Virtualization
● If host hardware fails every VMs fail
● Difficult troubleshooting
● Standard environments
● Improve resources usage
● Data recovery
![Page 23: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/23.jpg)
Virtualization
● If host hardware fails every VMs fail
● Difficult troubleshooting
● New layer = Some Overhead
● Standard environments
● Improve resources usage
● Data recovery
![Page 24: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/24.jpg)
Containers - LXC
● Since Jul/2008 - Kernel 2.6.26+
![Page 25: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/25.jpg)
● Since Jul/2008 - Kernel 2.6.26+
● lxc-create, lxc-start, lxc-stop
Containers - LXC
![Page 26: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/26.jpg)
Containers - LXC
● Since Jul/2008 - Kernel 2.6.26+
● lxc-create, lxc-start, lxc-stop
● Shares kernel libs and binaries with host
![Page 27: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/27.jpg)
● Process isolation - 1 Linux PID (chroot)
Containers - LXC
![Page 28: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/28.jpg)
Containers - LXC
● Process isolation - 1 Linux PID (chroot)● Network isolation
![Page 29: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/29.jpg)
Containers - LXC
● Process isolation - 1 Linux PID (chroot)● Network isolation● Define memory limitation
![Page 30: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/30.jpg)
Containers - LXC
● Process isolation - 1 Linux PID (chroot)● Network isolation● Define memory limitation● IO overhead - difficult to share host
volumes with guests
![Page 31: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/31.jpg)
Docker
![Page 32: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/32.jpg)
Docker
![Page 33: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/33.jpg)
Docker
![Page 34: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/34.jpg)
● Copy on write (AUFS)
Docker
![Page 35: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/35.jpg)
● Copy on write (AUFS)● Logging (stdout, stderr, stdin)
Docker
![Page 36: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/36.jpg)
● Copy on write (AUFS)● Logging (stdout, stderr, stdin)● Change management (imgs)
Docker
![Page 37: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/37.jpg)
● Copy on write (AUFS)● Logging (stdout, stderr, stdin)● Change management (imgs)● Automatic build (Dockerfile)
Docker
![Page 38: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/38.jpg)
● Copy on write (AUFS)● Logging (stdout, stderr, stdin)● Change management (imgs)● Automatic build (Dockerfile)● Reusable (FROM: imagename)
Docker
![Page 39: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/39.jpg)
● Copy on write (AUFS)● Logging (stdout, stderr, stdin)● Change management (imgs)● Automatic build (Dockerfile)● Reusable (FROM: imagename)● Easy to share (registry - docker hub)
Docker
![Page 40: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/40.jpg)
Docker
● Copy on write (AUFS)● Logging (stdout, stderr, stdin)● Change management (imgs)● Automatic build (Dockerfile)● Reusable (FROM: imagename)● Easy to share (registry - docker hub)● Private and public registry
![Page 41: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/41.jpg)
● API layer (REST)
Docker
![Page 42: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/42.jpg)
Docker
● API layer (REST)● Fast innovations (compose, machine,
swarm, network)
![Page 43: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/43.jpg)
Docker
Awesome
![Page 44: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/44.jpg)
Docker - Comparison
![Page 45: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/45.jpg)
Docker - Comparison
● Start realy fast
![Page 46: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/46.jpg)
Docker - Comparison
● Start realy fast● Smaller images
![Page 47: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/47.jpg)
Docker - Comparison
● Start realy fast● Smaller images● Easy replication
![Page 48: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/48.jpg)
Docker - Comparison
● Start realy fast● Smaller images● Easy replication● Better resources
utilization
![Page 49: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/49.jpg)
Docker - Comparison
● Start realy fast● Smaller images● Easy replication● Better resources
utilization
● IO overhead
![Page 50: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/50.jpg)
Docker - Comparison
● Start realy fast● Smaller images● Easy replication● Better resources
utilization
● IO overhead● Not too isolated
![Page 51: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/51.jpg)
Docker - Comparison
● Start realy fast● Smaller images● Easy replication● Better resources
utilization
● IO overhead● Not too isolated● Linux ONLY
![Page 52: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/52.jpg)
Docker - Quick Tips
● It's Container not a VM
![Page 53: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/53.jpg)
Docker - Quick Tips
● It's Container not a VM● Why container - because it solves cargo
transport matrix
![Page 54: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/54.jpg)
Docker - Quick Tips
● It's Container not a VM● Why container - because it solves cargo
transport matrix● Why docker, because of docks
![Page 55: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/55.jpg)
Docker - Quick Tips
● It's Container not a VM● Why container - because it solves cargo
transport matrix● Why docker, because of docks● Images are states, Containers runs it
![Page 56: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/56.jpg)
● Go http://docs.docker.com/installation
Docker - Install
![Page 57: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/57.jpg)
● Go http://docs.docker.com/installation● Find you host OS
Docker - Install
![Page 58: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/58.jpg)
● Go http://docs.docker.com/installation● Find you host OS● Follow the instructions
Docker - Install
![Page 59: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/59.jpg)
● Go http://docs.docker.com/installation● Find you host OS● Follow the instructions● FreeBSD hosts will be supported soon
Docker - Install
![Page 60: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/60.jpg)
● Go http://docs.docker.com/installation● Find you host OS● Follow the instructions● FreeBSD hosts will be supported soon● MacOS and Windows needs a VM to act as a
Host - boot2docker sugested
Docker - Install
![Page 61: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/61.jpg)
Docker - Basics
"Talk is cheap, show me the code."Linus Torvalds
![Page 62: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/62.jpg)
● Volume sharing● Port expose/mapping● Links between containers
Docker - Medium
![Page 63: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/63.jpg)
Docker Machine
Creates virtual machines ready to run docker locally or on the cloud.
![Page 64: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/64.jpg)
● Docker Compose (Old FIG) https://docs.docker.com/compose/install/
● Crane - http://getcrane.com● AZK - http://azk.io
Orchestration
![Page 65: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/65.jpg)
Docker Compose
![Page 66: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/66.jpg)
Docker Compose
![Page 67: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/67.jpg)
● Docker Swarm
Docker - Other Cool Stuff
![Page 68: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/68.jpg)
● Docker Swarm● Docker Network
Docker - Other Cool Stuff
![Page 69: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/69.jpg)
● Docker Swarm● Docker Network● OpenContainers - Linux Foundation
Docker - Other Cool Stuff
![Page 70: Talk on PHP Day Uruguay about Docker](https://reader034.fdocuments.net/reader034/viewer/2022051523/587926911a28ab7c448b474d/html5/thumbnails/70.jpg)
Slides
Questions
Evaluation