Docker has quickly become the container engine of choice, and it may be replacing a virtual machine near you soon. This book offers a step-by-step guide to walk you through building your first real PHP web application using Docker while explaining the basics of the platform along the way.
You can buy the eBook on Leanpub today.
I’ve been using Docker for local development and continuous integration environments for several years now, but have always struggled more with production deploys. At first, orchestration tools were almost non-existent so everyone deployed Docker differently, but now as Kubernetes has become the dominant force in production containers, it’s star... Read more 12 Apr 2019 - 9 minute read
Last year I started logging slow requests using PHP-FPM’s slow request log. This tool provides a very helpful, high level view of which requests to your website are not performing well, and it can help you find bugs, memory leaks, and optimizations for your database queries. After a few weeks, I noticed that two requests were especially slow - ... Read more 25 Mar 2019 - 9 minute read
It’s been almost a year exactly since I first published Building PHP Applications in Docker, and today I’m excited to announce that it is now available in Russian! I can’t take any credit for this translation; Alexey Pyltsyn reached out and generously offered to do the translation for free. Since I don’t speak Russian, I can’t verify the accu... Read more 09 Aug 2018 - less than 1 minute read
Lately I’ve been working to deploy a suite of PHP microservices using Docker containers. One of the problems is that our PHP applications are set up to work with PHP-FPM and Nginx (instead of the admittedly simpler Apache/PHP setup covered here), so each PHP microservice needs two containers (and by extension, two Docker images): a PHP-FPM conta... Read more 06 Jun 2018 - 5 minute read
If you’ve been writing PHPUnit tests for long, you’ve probably run into a time when a test works 90% of the time, but every now and then it throws an unexpected error or failure. If it happens only rarely, you might just get around it by re-running your test suite, but if you’ve got a large test suite or intermittent failures become really commo... Read more 30 May 2018 - 1 minute read