Skip to content

Latest commit

 

History

History
248 lines (223 loc) · 15 KB

File metadata and controls

248 lines (223 loc) · 15 KB

PHP-FPM

Docker Stars Docker Pulls

Description

Extends official PHP Docker images with extensions and tools to be able to run Spryker.

  • Based on official PHP images

    • Alpine 3.20
    • Alpine 3.21
    • Alpine 3.22
    • Alpine 3.23
    • 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 OTEL support
spryker/php:latest 8.2.30 Alpine 3.22 🔗
spryker/php:8.4 8.4.17 Alpine 3.22 🔗
spryker/php:8.3 8.3.30 Alpine 3.22 🔗
spryker/php:8.2 8.2.30 Alpine 3.22 🔗
spryker/php:8.1 8.1.32 Alpine 3.20 🔗
spryker/php:8.4-alpine3.23 8.4.17 Alpine 3.23 🔗
spryker/php:8.3-alpine3.23 8.3.30 Alpine 3.23 🔗
spryker/php:8.2-alpine3.23 8.2.30 Alpine 3.23 🔗
spryker/php:8.4-alpine3.22 8.4.17 Alpine 3.22 🔗
spryker/php:8.3-alpine3.22 8.3.30 Alpine 3.22 🔗
spryker/php:8.2-alpine3.22 8.2.30 Alpine 3.22 🔗
spryker/php:8.4-alpine3.21 8.4.15 Alpine 3.21 🔗
spryker/php:8.3-alpine3.21 8.3.28 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.4-debian 8.4.11 Debian "bullseye" 🔗
spryker/php:8.3-debian 8.3.24 Debian "bullseye" 🔗
spryker/php:8.2-debian 8.2.29 Debian "bullseye" 🔗
spryker/php:8.1-debian 8.1.33 Debian "bullseye" 🔗
spryker/php:8.0-debian 8.0.30 Debian "bullseye" 🔗

How to use

Pull image

$ docker pull spryker/php
$ docker pull spryker/php:8.3

Run container

$ docker run -i --rm spryker/php:latest php -v

Dockerfile

FROM spryker/php:8.2

docker-compose.yml

service1:
    image: spryker/php:8.2-debian

Enable NewRelic

FROM spryker/php:8.2

RUN mv /usr/local/etc/php/disabled/newrelic.ini /usr/local/etc/php/conf.d/90-newrelic.ini

Enable Blackfire

FROM spryker/php:8.2

RUN mv /usr/local/etc/php/disabled/blackfire.ini /usr/local/etc/php/conf.d/90-blackfire.ini

Enable Tideways

FROM spryker/php:8.2

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
  [ ] 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.87.1~linux-musl-x64-non_zts82
 [ ] excimer 1.2.5
 [ ] imagick 3.8.1
 [ ] newrelic 12.3.0.28
 [ ] otel 
 [ ] pcov 1.0.12
 [ ] tideways 5.30.0-252e30b
 [ ] xhprof 2.3.10

INSTALLED PACKAGES, CHANNEL PECL.PHP.NET:
=========================================
PACKAGE VERSION STATE
amqp    2.2.0   stable
apcu    5.1.28  stable
excimer 1.2.5   stable
imagick 3.8.1   stable
pcov    1.0.12  stable
redis   6.3.0   stable
xdebug  3.5.0   stable
xhprof  2.3.10  stable

Composer
====================
Composer version 2.9.3 2025-09-19 13:41:59
PHP version 8.2.30 (/usr/local/bin/php)
Run the following to get the report
$ docker run -i --rm spryker/php:8.2-alpine3.22 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

More information