Extends official PHP Docker images with extensions and tools to be able to run Spryker.
- 
Based on official PHP images - Alpine 3.19
- Alpine 3.20
- Alpine 3.21
- Alpine 3.22
- 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.
| Tag | PHP version | Linux distribution | Details | Dockerfile | OTEL support | 
|---|---|---|---|---|---|
| spryker/php:latest | 8.2.28 | Alpine 3.20 | π | β | |
| spryker/php:8.4 | 8.4.8 | Alpine 3.20 | π | β | |
| spryker/php:8.3 | 8.3.17 | Alpine 3.20 | π | β | |
| spryker/php:8.2 | 8.2.28 | Alpine 3.20 | π | β | |
| spryker/php:8.1 | 8.1.32 | Alpine 3.20 | π | β | |
| spryker/php:8.4-alpine3.22 | 8.4.11 | Alpine 3.22 | π | β | |
| spryker/php:8.3-alpine3.22 | 8.3.23 | Alpine 3.22 | π | β | |
| spryker/php:8.2-alpine3.22 | 8.2.29 | Alpine 3.22 | π | β | |
| spryker/php:8.4-alpine3.21 | 8.4.11 | Alpine 3.21 | π | β | |
| spryker/php:8.3-alpine3.21 | 8.3.23 | Alpine 3.21 | π | β | |
| spryker/php:8.2-alpine3.21 | 8.2.29 | Alpine 3.21 | π | β | |
| spryker/php:8.4-alpine3.20 | 8.4.8 | Alpine 3.20 | π | β | |
| spryker/php:8.3-alpine3.20 | 8.3.17 | Alpine 3.20 | π | β | |
| spryker/php:8.2-alpine3.20 | 8.2.28 | Alpine 3.20 | π | β | |
| spryker/php:8.1-alpine3.20 | 8.1.32 | Alpine 3.20 | π | β | |
| spryker/php:8.3-alpine3.19 | 8.3.14 | Alpine 3.19 | π | β | |
| spryker/php:8.2-alpine3.19 | 8.2.26 | Alpine 3.19 | π | β | |
| spryker/php:8.1-alpine3.19 | 8.1.31 | Alpine 3.19 | π | β | |
| spryker/php:8.4-debian | 8.4.11 | Debian "bullseye" | π | β | |
| spryker/php:8.3-debian | 8.3.23 | Debian "bullseye" | π | β | |
| spryker/php:8.2-debian | 8.2.29 | Debian "bullseye" | π | β | |
| spryker/php:8.1-debian | 8.1.32 | Debian "bullseye" | π | β | |
| spryker/php:8.0-debian | 8.0.30 | Debian "bullseye" | π | β | 
$ docker pull spryker/php
$ docker pull spryker/php:8.3$ docker run -i --rm spryker/php:latest php -vFROM spryker/php:8.2service1:
    image: spryker/php:8.2-debianFROM spryker/php:8.2
RUN mv /usr/local/etc/php/disabled/newrelic.ini /usr/local/etc/php/conf.d/90-newrelic.iniFROM spryker/php:8.2
RUN mv /usr/local/etc/php/disabled/blackfire.ini /usr/local/etc/php/conf.d/90-blackfire.iniFROM spryker/php:8.2
RUN mv /usr/local/etc/php/disabled/tideways.ini /usr/local/etc/php/conf.d/90-tideways.iniInstalled extensions
====================
  [x] bcmath
  [x] bz2
  [ ] calendar
  [ ] com_dotnet
  [x] ctype
  [x] curl
  [x] date
  [ ] dba
  [ ] dl_test
  [x] dom
  [ ] enchant
  [ ] exif
  [ ] ext_skel.php
  [ ] ffi
  [x] fileinfo
  [x] filter
  [x] ftp
  [x] gd
  [ ] gettext
  [x] gmp
  [x] hash
  [x] iconv
  [ ] imap
  [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] random
  [x] readline
  [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
  [x] xml
  [x] xmlreader
  [x] xmlwriter
  [ ] xsl
  [ ] zend_test
  [x] zip
  [x] zlib
Disabled extensions
====================
 [ ] amqp 2.1.2
 [ ] blackfire 1.92.28~linux-musl-x64-non_zts82
 [ ] newrelic 11.2.0.15
 [ ] pcov 1.0.11
 [ ] tideways 5.5.14
 [ ] xhprof 2.3.10
INSTALLED PACKAGES, CHANNEL PECL.PHP.NET:
=========================================
PACKAGE VERSION STATE
amqp    2.1.2   stable
apcu    5.1.24  stable
pcov    1.0.11  stable
redis   6.1.0   stable
xdebug  3.3.2   stable
xhprof  2.3.10  stable
Composer
====================
PHP version 8.2.25 (/usr/local/bin/php)
Composer version 2.8.1 2024-10-04 11:31:01
$ 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