Sign inSign up

qile/php

By qile

•Updated over 7 years ago

Easy configurable PHP-FPM with preinstalled set of extensions and utilities

Image
1

1.1K

qile/php repository overview

Current PHP version: 7.3

Dockerfile⁠ Entrypoint⁠

⁠Preinstalled utilities:

⁠Preinstalled extensions:

phpredis and uuid extension are enabled by default

⁠Environment configuration:

⁠ENALBED_EXTENSIONS

Description: list of extensions to enable separated by semicolon.

Example: ENALBED_EXTENSIONS=xdebug;uopz;tideways

Available options: xdebug, uopz, tideways, xhprof, uuid, redis

Do not use xhprof and tideways at the same time (tideways is a fork of xhprof).

⁠PHP_INI_UPDATES

Description: list of directives to update in php.ini file separated by semicolon

Example: PHP_INI_UPDATES=memory_limit=64mb;opcache.save_comments=1

⁠PHPFPM_CONF_UPDATES

Description: list of directives to update in php-fpm.conf file separated by semicolon

Example: PHPFPM_CONF_UPDATES=log_level=debug

⁠WWW_CONF_UPDATES

Description: list of directives to update in www.conf⁠ file separated by semicolon

Example: WWW_CONF_UPDATES=pm.start_servers=5;pm.max_children=10

⁠Ports

Container exposes port 9000 for php-fpm connections.

⁠Notes

Right now, all changes made by environment configuration (enabling extensions and changing configuration) are permanent, there is not way to revert them except recreating container. On the other hand configuration can be rewritten to new values.

xhprof_runs.php is available in php's include_path, it's needed for both xhprof and tideways. Profiling data files are saved in /tmp/xhprof_out

⁠Examples

Running unit tests:

#!/bin/bash
docker run -it --rm --name=unit-tests \
	-e "ENABLED_EXTENSIONS=xdebug;uopz" \
	-e "PHP_INI_UPDATE=opcache.save_comments=1" \
	-v `pwd`:/src -w="/src" \
	qile/php vendor/bin/phpunit -c phpunit.xml "$@"

Tag summary

Content type

Image

Digest

Size

288.4 MB

Last updated

over 7 years ago

docker pull qile/php