Docker images built on top of the official PHP images with the addition of some common and useful extensions. You can find these images on the Docker Hub (and if you're reading this file, you're probably already there).
An automated build is set up, so they should be always up-to-date with the Dockerfiles in the GitHub repository. Also, every time an official PHP image is updated, a rebuild is triggered, so that you will always find the latest security patches installed in these images.
For development environments, you might want to choose an image with XDebug installed, instead.
latest
(Dockerfile)5.4
(5.4/Dockerfile)5.4-apache
(5.4/apache/Dockerfile)5.4-fpm
(5.4/fpm/Dockerfile)5.5
(5.5/Dockerfile)5.5-apache
(5.5/apache/Dockerfile)5.5-fpm
(5.5/fpm/Dockerfile)5.6
(5.6/Dockerfile)5.6-apache
(5.6/apache/Dockerfile)5.6-fpm
(5.6/fpm/Dockerfile)7.0
(7.0/Dockerfile)7.0-apache
(7.0/apache/Dockerfile)7.0-fpm
(7.0/fpm/Dockerfile)7.1
(7.1/Dockerfile)7.1-apache
(7.1/apache/Dockerfile)7.1-fpm
(7.1/fpm/Dockerfile)7.2
(7.2/Dockerfile)7.2-apache
(7.2/apache/Dockerfile)7.2-fpm
(7.2/fpm/Dockerfile)
As you might have guessed, all tags are built on top of the corresponding tag of the official image. Not all tags are supported in order to easen manteinance.
The following modules and extensions have been enabled, in addition to those you can already find in the official PHP image:
bcmath
bz2
calendar
exif
iconv
intl
gd
ldap
mbstring
mcrypt
memcached
mysql
(only PHP 5.x)mysqli
pdo_mysql
pdo_pgsql
pgsql
redis
soap
Zend OPcache
zip
You will probably not need all this stuff. Even if having some extra extensions loaded ain't a big issue in most cases, you will very likely want to checkout this repository, remove unwanted extensions from the Dockerfile
, and build your own image — for sometimes removing is easier than adding. 😉
Composer is installed globally in all images. Please, refer to their documentation for usage hints.
- Image virtual size is over 600 MB 😞 Even though PHP official images themselves are over 450 MB, we will try to cut size down as much as we can.
If you find an issue, or have a special wish not yet fulfilled, please open an issue on GitHub providing as many details as you can (the more you are specific about your problem, the easier it is for us to fix it).
Pull requests are welcome, too! 😁 Please, run make build
and make test
before attempting a pull request. Also, it would be nice if you could stick to the best practices for writing Dockerfiles.