PHP-FPM
Description
Extends official PHP Docker images with extensions and tools to be able to run Spryker on.
-
Based on official PHP images
Alpine 3.14
Alpine 3.15
Alpine 3.16
Debian "bullseye"
-
Users:
root
,spryker
-
Working directory:
/data
-
Includes:
- PHP extensions
- PostgreSQL client
- MySQL client
- CURL
- OpenSSH client
- Composer v2
Note: Provided images require additional configuration for development, staging and production use.
Tags
Tag | PHP version | Linux distribution | Details | Dockerfile |
---|---|---|---|---|
spryker/php:latest | 7.4.29 | Alpine 3.14 | 🔗 | |
spryker/php:8.1 | 8.1.6 | Alpine 3.14 | 🔗 | |
spryker/php:8.0 | 8.0.19 | Alpine 3.14 | 🔗 | |
spryker/php:7.4 | 7.4.29 | Alpine 3.14 | 🔗 | |
spryker/php:8.1-alpine3.16 | 8.1.8 | Alpine 3.16 | 🔗 | |
spryker/php:8.0-alpine3.16 | 8.0.21 | Alpine 3.16 | 🔗 | |
spryker/php:7.4-alpine3.16 | 7.4.30 | Alpine 3.16 | 🔗 | |
spryker/php:8.1-alpine3.15 | 8.1.8 | Alpine 3.15 | 🔗 | |
spryker/php:8.0-alpine3.15 | 8.0.21 | Alpine 3.15 | 🔗 | |
spryker/php:7.4-alpine3.15 | 7.4.30 | Alpine 3.15 | 🔗 | |
spryker/php:8.1-alpine3.14 | 8.1.6 | Alpine 3.14 | 🔗 | |
spryker/php:8.0-alpine3.14 | 8.0.19 | Alpine 3.14 | 🔗 | |
spryker/php:7.4-alpine3.14 | 7.4.29 | Alpine 3.14 | 🔗 | |
spryker/php:8.1-debian | 8.1.8 | Debian "bullseye" | 🔗 | |
spryker/php:8.0-debian | 8.0.21 | Debian "bullseye" | 🔗 | |
spryker/php:7.4-debian | 7.4.30 | Debian "bullseye" | 🔗 |
How to use
Pull image
$ docker pull spryker/php
$ docker pull spryker/php:7.4
Run container
$ docker run -i --rm spryker/php:latest php -v
Dockerfile
FROM spryker/php:7.4
docker-compose.yml
service1:
image: spryker/php:7.3-debian
Enable NewRelic
FROM spryker/php:7.4
RUN mv /usr/local/etc/php/disabled/newrelic.ini /usr/local/etc/php/conf.d/90-newrelic.ini
Enable Blackfire
FROM spryker/php:7.4
RUN mv /usr/local/etc/php/disabled/blackfire.ini /usr/local/etc/php/conf.d/90-blackfire.ini
Enable Tideways
FROM spryker/php:7.4
RUN mv /usr/local/etc/php/disabled/tideways.ini /usr/local/etc/php/conf.d/90-tideways.ini
PHP extensions
Installed extensions
====================
[x] bcmath
[x] bz2
[ ] calendar
[ ] com_dotnet
[x] ctype
[x] curl
[x] date
[ ] dba
[x] dom
[ ] enchant
[ ] exif
[ ] ext_skel.php
[x] fileinfo
[x] filter
[x] ftp
[x] gd
[ ] gettext
[x] gmp
[x] hash
[x] iconv
[ ] imap
[ ] interbase
[x] intl
[x] json
[ ] ldap
[x] libxml
[x] mbstring
[x] mysqli
[x] mysqlnd
[ ] oci8
[ ] odbc
[x] opcache
[x] openssl
[x] pcntl
[x] pcre
[x] pdo
[ ] pdo_dblib
[ ] pdo_firebird
[x] pdo_mysql
[ ] pdo_oci
[ ] pdo_odbc
[x] pdo_pgsql
[x] pdo_sqlite
[x] pgsql
[x] phar
[x] posix
[ ] pspell
[x] readline
[ ] recode
[x] reflection
[x] session
[ ] shmop
[x] simplexml
[ ] skeleton
[ ] snmp
[x] soap
[x] sockets
[x] sodium
[x] spl
[x] sqlite3
[x] standard
[ ] sysvmsg
[ ] sysvsem
[ ] sysvshm
[ ] tidy
[x] tokenizer
[ ] wddx
[x] xml
[x] xmlreader
[ ] xmlrpc
[x] xmlwriter
[ ] xsl
[ ] zend_test
[x] zip
[x] zlib
Disabled extensions
====================
[ ] blackfire 1.57.0
[ ] newrelic 9.19.0.309
[ ] tideways 5.5.2
Installed packages, channel pecl.php.net:
=========================================
Package Version State
apcu 5.1.20 stable
redis 5.3.4 stable
xdebug 3.0.3 stable
Composer
====================
Composer version 2.0.12 2021-04-01 10:14:59
Run the following to get the report
$ docker run -i --rm spryker/php:latest bash -s<<'EOF'
docker-php-source extract
echo "Installed extensions";
echo "====================";
for ext in `ls /usr/src/php/ext`; do echo ' ' `php -r "if (extension_loaded('$ext' !== 'opcache' ? '$ext' : 'Zend OPcache')) { echo '[x] $ext'; } else { echo '[ ] $ext'; }"`; done
echo "";
echo "Disabled extensions";
echo "====================";
for f in /usr/local/etc/php/disabled/*.ini; do disabled=$(basename $f | sed -e 's/\.ini$//'); echo " [ ] ${disabled} $(PHP_INI_SCAN_DIR=:/usr/local/etc/php/disabled php -r "echo phpversion('${disabled}');")"; done
echo "";
pear list -c pecl
echo "";
echo "Composer";
echo "====================";
composer -V
EOF