What is PHPDocker.io?


PHPDocker.io is a tool that will help you build a typical PHP development environment based on Docker with just a few clicks. It supports provisioning of the usual services (MySQL/MariaDB, Redis, Elasticsearch...), with more to come. PHP 7.1 is supported, as well as 7.0 and 5.6.

Why Docker? Containers are typically faster to set up, less prone to provisioning errors (pre-setup images), and last but not least, web app deployment is going the way of the container. PHP applications work really well on Docker, and, as applications are increasingly set up for Docker, so should our development environments.

News


PHP 7.3 and XDebug
January 29th, 2019

Update: xdebug is again available for php 7.3.

Due to an issue with opcache in PHP 7.3.0 and 7.3.1 (the latter is the current version offered by our base images), XDebug is currently crashing php-fpm.

I've temporarily disabled XDebug from the generator when on PHP 7.3 until PHP 7.3.2 comes out. You can follow this github issue to track when a fix is available. In the meantime, if you're seeing a 502 error, remove the extension from php-fpm's dockerfile, then rebuild with `docker-compose build php-fpm`.

   


2019 Updates: PHP 7.3, CI and site rearchitecture project
January 9th, 2019

Big bunch of updates, big and small:

  • PHP 7.3
  • MariaDB up to 10.4
  • Postgres up to 11.1
  • Elasticsearch

I've also set up CI for base-images, and now images get built every day on a timer. This has several advantages over letting docker hub build images linked to debian and php releases: you will get the newest php versions as soon as they're available on the PPAs I use for php >= 7.0, and it will also ameliorate issues when installing php extensions where a bigger apt update needed to be done to satisfy requirements.

In other news, I'm currently working on rearchitecting the site, both as a personal improvement project as well as to make it easier to maintain down the line. I'm moving away from server side generated HTML, which I used originally as a rapid prototyping measure, taking advantage of the many Symfony features in this area (namely, forms). Times, however, move on: the generator and news functionality is being moved into an API (thanks to symfony flex and api platform) and the frontend is moving into a React app.

This is a pretty big undertaking and I work full time as a contractor, so it will take some time until it's ready for prime time. I do as always accept contributions, please head to github, next branch if you wanna help.


Interview with Karl Hughes from Shiphp
November 15th, 2017

Karl Hughes from Shiphp interviewed me for his blog just this week.

 

 

 


June updates: Clickhouse
June 29th, 2017

June has been pretty quiet. Mostly, under-the-hood improvements like optimisations to the generated docker-compose file for larger projects (thanks to z1r0-).

A new, interesting feature is Clickhouse support, kindly contributed by Andrey Bolonin. I'm not familiar with Clickhouse, a SQL-esque data store for larger, if not huge, datasets for analysis by Yandex, but it's intriguing.