A short talk about putting CakePHP in a (Docker) container environment for CI and CD purposes, what obstacles we have encountered doing that and what advantages it has provided us.
WHO IS THIS GUY? STEFAN VAN GASTEL ▸ Dutch Ministry Of Defence (MOD) ▸ Since 2006 ▸ Technical lead ‘Mobile Apps Military Police’ ▸ Front-end ▸ Back-end ▸ Services ▸ Infrastructure ▸ Architecture 3
CONTAINERS WHAT ARE CONTAINERS? Unlike VMs, containers do not bundle a full operating system - only libraries and settings required to make the software work are needed. This makes for efficient, lightweight, self-contained systems and guarantees that software will always run the same, regardless of where it’s deployed. Source: https://docker.com 5 Vary in: - Speed - Resource usage - Footprint - Isolation
CONTAINERS WHAT IS DOCKER? Docker is the world’s leading software container platform. Developers use Docker to eliminate “works on my machine” Operators use Docker to run and manage apps side-by- side in isolated containers to get better compute density. Source: https://docker.com 6
LESSONS LEARNED 2 OF 3 12 FACTOR APPS III. Config | Store config in the environment IV. Backing services | Treat backing services as attached resources IX. Disposability | Maximize robustness with fast startup and graceful shutdown https://12factor.net 14