Extends official PHP Docker images with extensions and tools to be able to run Spryker on.
10M+
Extends official PHP Docker images with extensions and tools to be able to run Spryker.
Alpine 3.23Alpine 3.24Debian "bookworm"root, spryker/dataNote: 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.35 | Alpine 3.23 | :link: | ✖ | |
| spryker/php:8.5 | 8.5.12 | Alpine 3.24 | :link: | ✔ | |
| spryker/php:8.4 | 8.4.27 | Alpine 3.23 | :link: | ✔ | |
| spryker/php:8.3 | 8.3.36 | Alpine 3.23 | :link: | ✔ | |
| spryker/php:8.2 | 8.2.35 | Alpine 3.23 | :link: | ✖ | |
| spryker/php:8.5-alpine3.24 | 8.5.12 | Alpine 3.24 | :link: | ✔ | |
| spryker/php:8.4-alpine3.24 | 8.4.27 | Alpine 3.24 | :link: | ✔ | |
| spryker/php:8.3-alpine3.24 | 8.3.36 | Alpine 3.24 | :link: | ✔ | |
| spryker/php:8.2-alpine3.24 | 8.2.35 | Alpine 3.24 | :link: | ✖ | |
| spryker/php:8.4-alpine3.23 | 8.4.27 | Alpine 3.23 | :link: | ✔ | |
| spryker/php:8.3-alpine3.23 | 8.3.36 | Alpine 3.23 | :link: | ✔ | |
| spryker/php:8.2-alpine3.23 | 8.2.35 | Alpine 3.23 | :link: | ✖ | |
| spryker/php:8.5-debian | 8.5.12 | Debian "bookworm" | :link: | ✔ | |
| spryker/php:8.4-debian | 8.4.27 | Debian "bookworm" | :link: | ✔ | |
| spryker/php:8.3-debian | 8.3.36 | Debian "bookworm" | :link: | ✔ | |
| spryker/php:8.2-debian | 8.2.35 | Debian "bookworm" | :link: | ✔ |
$ docker pull spryker/php
$ docker pull spryker/php:8.3
$ docker run -i --rm spryker/php:latest php -v
FROM spryker/php:8.2
service1:
image: spryker/php:8.2-debian
FROM spryker/php:8.2
RUN mv /usr/local/etc/php/disabled/newrelic.ini /usr/local/etc/php/conf.d/90-newrelic.ini
FROM spryker/php:8.2
RUN mv /usr/local/etc/php/disabled/blackfire.ini /usr/local/etc/php/conf.d/90-blackfire.ini
FROM spryker/php:8.2
RUN mv /usr/local/etc/php/disabled/tideways.ini /usr/local/etc/php/conf.d/90-tideways.ini
xlswriter is built into every image but stays disabled by default. Enable it when the application reads or writes XLSX files.
FROM spryker/php:8.2
RUN mv /usr/local/etc/php/disabled/xlswriter.ini /usr/local/etc/php/conf.d/90-xlswriter.ini
xsl is built into every image but stays disabled by default. Enable it when the application transforms XML with XSLTProcessor.
FROM spryker/php:8.2
RUN mv /usr/local/etc/php/disabled/xsl.ini /usr/local/etc/php/conf.d/90-xsl.ini
Installed 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.2.0
[ ] blackfire 1.92.48~linux-musl-x64-non_zts83
[ ] excimer 1.2.6
[ ] imagick 3.8.1
[ ] newrelic 12.12.0.41
[ ] otel
[ ] pcov 1.0.12
[ ] tideways 5.47.0-e84e8a5
[ ] xhprof 2.3.10
[ ] xlswriter 3.0.0
[ ] xsl 8.3.36
INSTALLED PACKAGES, CHANNEL PECL.PHP.NET:
=========================================
PACKAGE VERSION STATE
amqp 2.2.0 stable
apcu 5.1.28 stable
excimer 1.2.6 stable
imagick 3.8.1 stable
pcov 1.0.12 stable
redis 6.3.0 stable
xdebug 3.5.3 stable
xhprof 2.3.10 stable
xlswriter 3.0.0 stable
Composer
====================
Composer version 2.10.3 2026-08-27 13:34:23
$ docker run -i --rm spryker/php:8.3 bash -s<<'EOF'
docker-php-source extract
echo "Installed extensions"
echo "===================="
for ext in $(ls /usr/src/php/ext); do
if php -r "exit(extension_loaded('$ext') || ('$ext' == 'opcache' && extension_loaded('Zend OPcache')) ? 0 : 1);" 2>/dev/null; then
echo " [x] $ext"
else
echo " [ ] $ext"
fi
done
echo ""
echo "Disabled extensions"
echo "===================="
for f in /usr/local/etc/php/disabled/*.ini; do
if [ -f "$f" ]; then
disabled=$(basename "$f" | sed -e 's/\.ini$//')
version=$(PHP_INI_SCAN_DIR=:/usr/local/etc/php/disabled php -r "echo phpversion('${disabled}');" 2>/dev/null || echo "")
echo " [ ] ${disabled} ${version}"
fi
done
echo ""
echo "INSTALLED PACKAGES, CHANNEL PECL.PHP.NET:"
echo "========================================="
pear list -c pecl 2>/dev/null || echo "No PECL packages found"
echo ""
echo "Composer"
echo "===================="
composer -V
EOF
Content type
Image
Digest
sha256:3758e6896…
Size
230.8 MB
Last updated
1 day ago
docker pull spryker/php