/docker-php

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

Primary LanguageDockerfileMIT LicenseMIT

PHP-FPM

Docker Stars Docker Pulls

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.12 Alpine 3.16 🔗
spryker/php:8.0-alpine3.16 8.0.25 Alpine 3.16 🔗
spryker/php:7.4-alpine3.16 7.4.33 Alpine 3.16 🔗
spryker/php:8.1-alpine3.15 8.1.12 Alpine 3.15 🔗
spryker/php:8.0-alpine3.15 8.0.25 Alpine 3.15 🔗
spryker/php:7.4-alpine3.15 7.4.33 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.12 Debian "bullseye" 🔗
spryker/php:8.0-debian 8.0.25 Debian "bullseye" 🔗
spryker/php:7.4-debian 7.4.33 Debian "bullseye" 🔗

How to use

Pull image

$ docker pull spryker/php
$ docker pull spryker/php:8.1

Run container

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

Dockerfile

FROM spryker/php:8.1

docker-compose.yml

service1:
    image: spryker/php:8.1-debian

Enable NewRelic

FROM spryker/php:8.1

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

Enable Blackfire

FROM spryker/php:8.1

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

Enable Tideways

FROM spryker/php:8.1

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] 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
====================
 [ ] blackfire 1.57.0
 [ ] newrelic 9.19.0.309
 [ ] tideways 5.5.8

INSTALLED PACKAGES, CHANNEL PECL.PHP.NET:
=========================================
PACKAGE VERSION STATE
apcu    5.1.22  stable
redis   5.3.7   stable
xdebug  3.1.6   stable
xhprof  2.3.5   stable
Composer
====================
Composer version 2.3.10 2022-07-13 15:48:23
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

More information