diff --git a/Dockerfiles/mods/Dockerfile-5.2 b/Dockerfiles/mods/Dockerfile-5.2
index 9d23652e..b9f8df07 100644
--- a/Dockerfiles/mods/Dockerfile-5.2
+++ b/Dockerfiles/mods/Dockerfile-5.2
@@ -480,7 +480,6 @@ RUN set -x \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
&& php -m | grep -oiE '^readline$' \
- && php-fpm -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -499,6 +498,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^soap$' \
&& php -m | grep -oiE '^sockets$' \
&& php-fpm -m | grep -oiE '^sockets$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^sysvmsg$' \
&& php-fpm -m | grep -oiE '^sysvmsg$' \
&& php -m | grep -oiE '^sysvsem$' \
diff --git a/Dockerfiles/mods/Dockerfile-5.3 b/Dockerfiles/mods/Dockerfile-5.3
index 565f8edb..041e32ab 100644
--- a/Dockerfiles/mods/Dockerfile-5.3
+++ b/Dockerfiles/mods/Dockerfile-5.3
@@ -539,6 +539,7 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^posix$' \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
+ && php -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -559,6 +560,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^soap$' \
&& php -m | grep -oiE '^sockets$' \
&& php-fpm -m | grep -oiE '^sockets$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^swoole$' \
&& php-fpm -m | grep -oiE '^swoole$' \
&& php -m | grep -oiE '^sysvmsg$' \
diff --git a/Dockerfiles/mods/Dockerfile-5.4 b/Dockerfiles/mods/Dockerfile-5.4
index fc5df40e..d9323be7 100644
--- a/Dockerfiles/mods/Dockerfile-5.4
+++ b/Dockerfiles/mods/Dockerfile-5.4
@@ -545,7 +545,6 @@ RUN set -x \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
&& php -m | grep -oiE '^readline$' \
- && php-fpm -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -566,6 +565,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^soap$' \
&& php -m | grep -oiE '^sockets$' \
&& php-fpm -m | grep -oiE '^sockets$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^swoole$' \
&& php-fpm -m | grep -oiE '^swoole$' \
&& php -m | grep -oiE '^sysvmsg$' \
diff --git a/Dockerfiles/mods/Dockerfile-5.5 b/Dockerfiles/mods/Dockerfile-5.5
index cd938b71..82609d98 100644
--- a/Dockerfiles/mods/Dockerfile-5.5
+++ b/Dockerfiles/mods/Dockerfile-5.5
@@ -539,7 +539,6 @@ RUN set -x \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
&& php -m | grep -oiE '^readline$' \
- && php-fpm -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -560,6 +559,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^soap$' \
&& php -m | grep -oiE '^sockets$' \
&& php-fpm -m | grep -oiE '^sockets$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^swoole$' \
&& php-fpm -m | grep -oiE '^swoole$' \
&& php -m | grep -oiE '^sysvmsg$' \
diff --git a/Dockerfiles/mods/Dockerfile-5.6 b/Dockerfiles/mods/Dockerfile-5.6
index 4e358d32..fa530ed5 100644
--- a/Dockerfiles/mods/Dockerfile-5.6
+++ b/Dockerfiles/mods/Dockerfile-5.6
@@ -536,12 +536,13 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^pgsql$' \
&& php -m | grep -oiE '^phalcon$' \
&& php-fpm -m | grep -oiE '^phalcon$' \
+ && php -m | grep -oiE '^phar$' \
+ && php-fpm -m | grep -oiE '^phar$' \
&& php -m | grep -oiE '^posix$' \
&& php-fpm -m | grep -oiE '^posix$' \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
&& php -m | grep -oiE '^readline$' \
- && php-fpm -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -562,6 +563,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^soap$' \
&& php -m | grep -oiE '^sockets$' \
&& php-fpm -m | grep -oiE '^sockets$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^swoole$' \
&& php-fpm -m | grep -oiE '^swoole$' \
&& php -m | grep -oiE '^sysvmsg$' \
diff --git a/Dockerfiles/mods/Dockerfile-7.0 b/Dockerfiles/mods/Dockerfile-7.0
index 3c95622c..58b4be56 100644
--- a/Dockerfiles/mods/Dockerfile-7.0
+++ b/Dockerfiles/mods/Dockerfile-7.0
@@ -231,7 +231,7 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/doc/memcache || true) \
\
# ---- Installing PHP Extension: memcached ----
- && pecl install memcached-3.0.4 \
+ && pecl install memcached \
&& docker-php-ext-enable memcached \
&& (rm -rf /usr/local/lib/php/test/memcached || true) \
&& (rm -rf /usr/local/lib/php/doc/memcached || true) \
@@ -257,11 +257,6 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/test/pcntl || true) \
&& (rm -rf /usr/local/lib/php/doc/pcntl || true) \
\
-# ---- Installing PHP Extension: pdo ----
- && /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo \
- && (rm -rf /usr/local/lib/php/test/pdo || true) \
- && (rm -rf /usr/local/lib/php/doc/pdo || true) \
- \
# ---- Installing PHP Extension: pdo_dblib ----
&& ln -s /usr/lib/x86_64-linux-gnu/libsybdb.* /usr/lib/ \
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_dblib \
@@ -551,12 +546,13 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^pgsql$' \
&& php -m | grep -oiE '^phalcon$' \
&& php-fpm -m | grep -oiE '^phalcon$' \
+ && php -m | grep -oiE '^phar$' \
+ && php-fpm -m | grep -oiE '^phar$' \
&& php -m | grep -oiE '^posix$' \
&& php-fpm -m | grep -oiE '^posix$' \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
&& php -m | grep -oiE '^readline$' \
- && php-fpm -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -577,6 +573,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^soap$' \
&& php -m | grep -oiE '^sockets$' \
&& php-fpm -m | grep -oiE '^sockets$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^sqlsrv$' \
&& php-fpm -m | grep -oiE '^sqlsrv$' \
&& php -m | grep -oiE '^swoole$' \
diff --git a/Dockerfiles/mods/Dockerfile-7.1 b/Dockerfiles/mods/Dockerfile-7.1
index 8de5acf0..4e567dd6 100644
--- a/Dockerfiles/mods/Dockerfile-7.1
+++ b/Dockerfiles/mods/Dockerfile-7.1
@@ -231,7 +231,7 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/doc/memcache || true) \
\
# ---- Installing PHP Extension: memcached ----
- && pecl install memcached-3.0.4 \
+ && pecl install memcached \
&& docker-php-ext-enable memcached \
&& (rm -rf /usr/local/lib/php/test/memcached || true) \
&& (rm -rf /usr/local/lib/php/doc/memcached || true) \
@@ -553,7 +553,6 @@ RUN set -x \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
&& php -m | grep -oiE '^readline$' \
- && php-fpm -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -574,6 +573,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^soap$' \
&& php -m | grep -oiE '^sockets$' \
&& php-fpm -m | grep -oiE '^sockets$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^sqlsrv$' \
&& php-fpm -m | grep -oiE '^sqlsrv$' \
&& php -m | grep -oiE '^swoole$' \
diff --git a/Dockerfiles/mods/Dockerfile-7.2 b/Dockerfiles/mods/Dockerfile-7.2
index 5594b4f2..8d3d1326 100644
--- a/Dockerfiles/mods/Dockerfile-7.2
+++ b/Dockerfiles/mods/Dockerfile-7.2
@@ -232,7 +232,7 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/doc/memcache || true) \
\
# ---- Installing PHP Extension: memcached ----
- && pecl install memcached-3.0.4 \
+ && pecl install memcached \
&& docker-php-ext-enable memcached \
&& (rm -rf /usr/local/lib/php/test/memcached || true) \
&& (rm -rf /usr/local/lib/php/doc/memcached || true) \
@@ -554,7 +554,6 @@ RUN set -x \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
&& php -m | grep -oiE '^readline$' \
- && php-fpm -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -577,6 +576,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^sockets$' \
&& php -m | grep -oiE '^sodium$' \
&& php-fpm -m | grep -oiE '^sodium$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^sqlsrv$' \
&& php-fpm -m | grep -oiE '^sqlsrv$' \
&& php -m | grep -oiE '^swoole$' \
diff --git a/Dockerfiles/mods/Dockerfile-7.3 b/Dockerfiles/mods/Dockerfile-7.3
index d633f843..0adc6cd6 100644
--- a/Dockerfiles/mods/Dockerfile-7.3
+++ b/Dockerfiles/mods/Dockerfile-7.3
@@ -187,11 +187,14 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/test/ldap || true) \
&& (rm -rf /usr/local/lib/php/doc/ldap || true) \
\
+# ---- Installing PHP Extension: msgpack ----
+ && pecl install msgpack \
+ && docker-php-ext-enable msgpack \
+ && (rm -rf /usr/local/lib/php/test/msgpack || true) \
+ && (rm -rf /usr/local/lib/php/doc/msgpack || true) \
+ \
# ---- Installing PHP Extension: memcached ----
- && git clone https://github.com/php-memcached-dev/php-memcached /tmp/memcached \
- && cd /tmp/memcached \
- && git checkout master \
- && phpize && ./configure --enable-memcached && make -j$(getconf _NPROCESSORS_ONLN) && make install \
+ && pecl install memcached \
&& docker-php-ext-enable memcached \
&& (rm -rf /usr/local/lib/php/test/memcached || true) \
&& (rm -rf /usr/local/lib/php/doc/memcached || true) \
@@ -477,6 +480,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^libxml$' \
&& php -m | grep -oiE '^mbstring$' \
&& php-fpm -m | grep -oiE '^mbstring$' \
+ && php -m | grep -oiE '^msgpack$' \
+ && php-fpm -m | grep -oiE '^msgpack$' \
&& php -m | grep -oiE '^memcached$' \
&& php-fpm -m | grep -oiE '^memcached$' \
&& php -m | grep -oiE '^mongodb$' \
@@ -518,7 +523,6 @@ RUN set -x \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
&& php -m | grep -oiE '^readline$' \
- && php-fpm -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -541,6 +545,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^sockets$' \
&& php -m | grep -oiE '^sodium$' \
&& php-fpm -m | grep -oiE '^sodium$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^sqlsrv$' \
&& php-fpm -m | grep -oiE '^sqlsrv$' \
&& php -m | grep -oiE '^swoole$' \
diff --git a/Dockerfiles/mods/Dockerfile-7.4 b/Dockerfiles/mods/Dockerfile-7.4
index 70b8a443..17404171 100644
--- a/Dockerfiles/mods/Dockerfile-7.4
+++ b/Dockerfiles/mods/Dockerfile-7.4
@@ -476,7 +476,6 @@ RUN set -x \
&& php -m | grep -oiE '^pspell$' \
&& php-fpm -m | grep -oiE '^pspell$' \
&& php -m | grep -oiE '^readline$' \
- && php-fpm -m | grep -oiE '^readline$' \
&& php -m | grep -oiE '^recode$' \
&& php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \
@@ -499,6 +498,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^sockets$' \
&& php -m | grep -oiE '^sodium$' \
&& php-fpm -m | grep -oiE '^sodium$' \
+ && php -m | grep -oiE '^spl$' \
+ && php-fpm -m | grep -oiE '^spl$' \
&& php -m | grep -oiE '^swoole$' \
&& php-fpm -m | grep -oiE '^swoole$' \
&& php -m | grep -oiE '^sysvmsg$' \
diff --git a/Dockerfiles/prod/data/docker-entrypoint.sh b/Dockerfiles/prod/data/docker-entrypoint.sh
index ce2b24e8..11d964ec 100755
--- a/Dockerfiles/prod/data/docker-entrypoint.sh
+++ b/Dockerfiles/prod/data/docker-entrypoint.sh
@@ -181,7 +181,8 @@ disable_modules "DISABLE_MODULES" "${DEBUG_LEVEL}"
###
### Run custom user supplied scripts
###
-execute_custom_scripts "/startup.d" "${DEBUG_LEVEL}"
+execute_custom_scripts "/startup.1.d" "${DEBUG_LEVEL}"
+execute_custom_scripts "/startup.2.d" "${DEBUG_LEVEL}"
###
diff --git a/Dockerfiles/work/Dockerfile-5.2 b/Dockerfiles/work/Dockerfile-5.2
index ae5d49a6..b0466eac 100644
--- a/Dockerfiles/work/Dockerfile-5.2
+++ b/Dockerfiles/work/Dockerfile-5.2
@@ -205,6 +205,8 @@ RUN set -x \
&& curl -qL https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
&& chmod +x /usr/local/bin/phpcbf \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# webpack
@@ -306,6 +308,7 @@ RUN set -x \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/Dockerfile-5.3 b/Dockerfiles/work/Dockerfile-5.3
index 48a7ef87..dbbf3d7f 100644
--- a/Dockerfiles/work/Dockerfile-5.3
+++ b/Dockerfiles/work/Dockerfile-5.3
@@ -239,6 +239,8 @@ RUN set -x \
&& curl -qL https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \
&& chmod +x /usr/local/bin/phpunit \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# webpack
@@ -348,6 +350,7 @@ RUN set -x \
&& phpcs --version | grep -E 'version [.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
&& wp --allow-root --version | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/Dockerfile-5.4 b/Dockerfiles/work/Dockerfile-5.4
index c9979551..538d609f 100644
--- a/Dockerfiles/work/Dockerfile-5.4
+++ b/Dockerfiles/work/Dockerfile-5.4
@@ -265,6 +265,8 @@ RUN set -x \
&& curl -qL https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \
&& chmod +x /usr/local/bin/phpunit \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# symfony
@@ -380,6 +382,7 @@ RUN set -x \
&& phpcs --version | grep -E 'version [.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& symfony --version | grep -E 'version\s*[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/Dockerfile-5.5 b/Dockerfiles/work/Dockerfile-5.5
index f5839955..bd061c23 100644
--- a/Dockerfiles/work/Dockerfile-5.5
+++ b/Dockerfiles/work/Dockerfile-5.5
@@ -276,6 +276,8 @@ RUN set -x \
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# symfony
@@ -394,6 +396,7 @@ RUN set -x \
&& phpcbf --version | grep -E 'version [.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
&& photon --version | grep -E 'Installer [.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& symfony --version | grep -E 'version\s*[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/Dockerfile-5.6 b/Dockerfiles/work/Dockerfile-5.6
index af38f61e..5f19be9a 100644
--- a/Dockerfiles/work/Dockerfile-5.6
+++ b/Dockerfiles/work/Dockerfile-5.6
@@ -289,6 +289,8 @@ RUN set -x \
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# symfony
@@ -408,6 +410,7 @@ RUN set -x \
&& phpcbf --version | grep -E 'version [.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
&& photon --version | grep -E 'Installer [.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& symfony --version | grep -E 'version\s*[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/Dockerfile-7.0 b/Dockerfiles/work/Dockerfile-7.0
index 71f718a8..dd0b6f66 100644
--- a/Dockerfiles/work/Dockerfile-7.0
+++ b/Dockerfiles/work/Dockerfile-7.0
@@ -289,6 +289,8 @@ RUN set -x \
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# symfony
@@ -408,6 +410,7 @@ RUN set -x \
&& phpcbf --version | grep -E 'version [.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
&& photon --version | grep -E 'Installer [.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& symfony --version | grep -E 'version\s*[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/Dockerfile-7.1 b/Dockerfiles/work/Dockerfile-7.1
index fc1f085e..2a6049b6 100644
--- a/Dockerfiles/work/Dockerfile-7.1
+++ b/Dockerfiles/work/Dockerfile-7.1
@@ -289,6 +289,8 @@ RUN set -x \
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# symfony
@@ -408,6 +410,7 @@ RUN set -x \
&& phpcbf --version | grep -E 'version [.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
&& photon --version | grep -E 'Installer [.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& symfony --version | grep -E 'version\s*[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/Dockerfile-7.2 b/Dockerfiles/work/Dockerfile-7.2
index afbea6da..43a1ff95 100644
--- a/Dockerfiles/work/Dockerfile-7.2
+++ b/Dockerfiles/work/Dockerfile-7.2
@@ -289,6 +289,8 @@ RUN set -x \
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# symfony
@@ -408,6 +410,7 @@ RUN set -x \
&& phpcbf --version | grep -E 'version [.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
&& photon --version | grep -E 'Installer [.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& symfony --version | grep -E 'version\s*[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/Dockerfile-7.3 b/Dockerfiles/work/Dockerfile-7.3
index 37edbc25..8f024706 100644
--- a/Dockerfiles/work/Dockerfile-7.3
+++ b/Dockerfiles/work/Dockerfile-7.3
@@ -278,6 +278,8 @@ RUN set -x \
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# symfony
@@ -396,6 +398,7 @@ RUN set -x \
&& phpcbf --version | grep -E 'version [.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
&& photon --version | grep -E 'Installer [.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& symfony --version | grep -E 'version\s*[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/Dockerfile-7.4 b/Dockerfiles/work/Dockerfile-7.4
index bea2d4ea..652aa35d 100644
--- a/Dockerfiles/work/Dockerfile-7.4
+++ b/Dockerfiles/work/Dockerfile-7.4
@@ -278,6 +278,8 @@ RUN set -x \
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
\
+# pm2
+ && until npm install pm2 -g; do sleep 1; done \
# sass
&& gem install sass \
# symfony
@@ -396,6 +398,7 @@ RUN set -x \
&& phpcbf --version | grep -E 'version [.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
&& photon --version | grep -E 'Installer [.0-9]+' \
+ && pm2 --version | grep -E '[.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
&& symfony --version | grep -E 'version\s*[.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \
diff --git a/Dockerfiles/work/data/docker-entrypoint.sh b/Dockerfiles/work/data/docker-entrypoint.sh
index dd8b6bfd..c7712f2a 100755
--- a/Dockerfiles/work/data/docker-entrypoint.sh
+++ b/Dockerfiles/work/data/docker-entrypoint.sh
@@ -209,7 +209,8 @@ update_ca_certificates "/ca" "${DEBUG_LEVEL}"
###
### Run custom user supplied scripts
###
-execute_custom_scripts "/startup.d" "${DEBUG_LEVEL}"
+execute_custom_scripts "/startup.1.d" "${DEBUG_LEVEL}"
+execute_custom_scripts "/startup.2.d" "${DEBUG_LEVEL}"
###
diff --git a/README.md b/README.md
index 9b7978e0..f1843757 100644
--- a/README.md
+++ b/README.md
@@ -526,47 +526,47 @@ Check out this table to see which Docker image provides what PHP modules.
5.2 |
ctype, curl, date, dom, filter, hash, iconv, json, libxml, mbstring, mysql, mysqli, openssl, pcre, PDO, pdo_mysql, pdo_sqlite, posix, readline, Reflection, session, SimpleXML, soap, SPL, SQLite, standard, tokenizer, xml, xmlreader, xmlwriter, zlib |
- amqp, bcmath, bz2, calendar, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, igbinary, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, msgpack, mysql, mysqli, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
+ amqp, bcmath, bz2, calendar, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, igbinary, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, msgpack, mysql, mysqli, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
5.3 |
Core, ctype, curl, date, dom, ereg, fileinfo, filter, hash, iconv, json, libxml, mysql, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, recode, Reflection, session, SimpleXML, SPL, SQLite, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib |
- amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
+ amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
5.4 |
Core, ctype, curl, date, dom, ereg, fileinfo, filter, hash, iconv, json, libxml, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, recode, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib |
- amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
+ amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
5.5 |
Core, ctype, curl, date, dom, ereg, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib |
- amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
+ amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
5.6 |
Core, ctype, curl, date, dom, ereg, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mhash, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib |
- amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mhash, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
+ amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mhash, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
7.0 |
Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib |
- amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
+ amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
7.1 |
Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib |
- amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
+ amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
7.2 |
Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib |
- amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
+ amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
7.3 |
Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib |
- apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, memcached, mongodb, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
+ apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, sqlsrv, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib |
7.4 |
@@ -760,7 +760,7 @@ Have a look at the following table to see all offered volumes for each Docker im
- prod
work |
+ prod
work |
/etc/php-custom.d |
Mount this directory into your host computer and add custom \*.ini files in order to alter php behaviour. |
@@ -773,8 +773,12 @@ Have a look at the following table to see all offered volumes for each Docker im
Mount this directory into your host computer and add custo \*.so files in order to add your php modules.
Note:Your should then also provide a custom \*.ini file in order to actually load your custom provided module. |
- /startup.d |
- Any executable scripts ending by \*.sh found in this directory will be executed during startup. This is useful to supply additional commands (such as installing custom software) when the container starts up. |
+ /startup.1.d |
+ Any executable scripts ending by \*.sh found in this directory will be executed during startup. This is useful to supply additional commands (such as installing custom software) when the container starts up. (will run before /startup.2.d ) |
+
+
+ /startup.2.d |
+ Any executable scripts ending by \*.sh found in this directory will be executed during startup. This is useful to supply additional commands (such as installing custom software) when the container starts up. (will run after /startup.1.d ) |
/var/log/php |
diff --git a/build/ansible/DOCKERFILES/Dockerfile-mods.j2 b/build/ansible/DOCKERFILES/Dockerfile-mods.j2
index d2a1e3fa..37bb92c1 100644
--- a/build/ansible/DOCKERFILES/Dockerfile-mods.j2
+++ b/build/ansible/DOCKERFILES/Dockerfile-mods.j2
@@ -224,6 +224,9 @@ RUN set -x \
{%- if ext == 'opcache' %}
&& php -m | grep -oiE '^Zend Opcache$' \
&& php-fpm -m | grep -oiE '^Zend Opcache$' \
+{# #}
+ {%- elif ext == 'readline' %}
+ && php -m | grep -oiE '^readline$' \
{# #}
{%- elif ext not in ['ioncube'] %}
&& php -m | grep -oiE '^{{ ext }}$' \
diff --git a/build/ansible/group_vars/all.yml b/build/ansible/group_vars/all.yml
index 12d4eca8..a3f2052a 100644
--- a/build/ansible/group_vars/all.yml
+++ b/build/ansible/group_vars/all.yml
@@ -220,6 +220,7 @@ software_enabled:
- phpcbf
- phpunit
- photon
+ - pm2
- sass
- symfony
- webpack
@@ -595,6 +596,11 @@ software_available:
command: |
COMPOSER_HOME="{{ compose_home }}" composer global require "photoncms/installer" \
&& ln -s {{ compose_home }}/vendor/photoncms/installer/photon /usr/local/bin/photon \
+ # https://github.com/Unitech/pm2
+ pm2:
+ check: pm2 --version | grep -E '[.0-9]+'
+ all:
+ command: until npm install pm2 -g; do sleep 1; done
sass:
check: sass --version | grep -E '[.0-9]+'
all:
@@ -828,23 +834,14 @@ extensions_available:
all:
type: builtin
ctype:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
+ already_avail: "{{ php_all_versions }}"
curl:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
- build_dep: [libcurl4-openssl-dev]
+ already_avail: "{{ php_all_versions }}"
dba:
all:
type: builtin
dom:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
- configure: --with-libxml-dir=/usr
- build_dep: [libxml2-dev]
+ already_avail: "{{ php_all_versions }}"
enchant:
5.2:
type: pecl
@@ -936,13 +933,9 @@ extensions_available:
pre: ln /usr/include/x86_64-linux-gnu/gmp.h /usr/include/
build_dep: [libgmp-dev]
hash:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
+ already_avail: "{{ php_all_versions }}"
iconv:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
+ already_avail: "{{ php_all_versions }}"
igbinary:
5.2:
type: pecl
@@ -1009,12 +1002,7 @@ extensions_available:
&& rm -rf ioncube \
&& rm -rf ioncube.tar.gz \
json:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- 7.0:
- type: builtin
- build_dep: [bison]
- all:
- type: builtin
+ already_avail: "{{ php_all_versions }}"
ldap:
all:
type: builtin
@@ -1072,11 +1060,6 @@ extensions_available:
5.6:
type: pecl
version: 2.2.0
- 7.3:
- type: git
- git_url: https://github.com/php-memcached-dev/php-memcached
- git_ref: master
- command: phpize && ./configure --enable-memcached && make -j$(getconf _NPROCESSORS_ONLN) && make install
7.4:
type: git
git_url: https://github.com/php-memcached-dev/php-memcached
@@ -1084,7 +1067,7 @@ extensions_available:
command: phpize && ./configure --enable-memcached && make -j$(getconf _NPROCESSORS_ONLN) && make install
all:
type: pecl
- version: 3.0.4
+ #version: 3.0.4 # TODO: check if this version works
build_dep: [zlib1g-dev, libmemcached-dev, libevent-dev]
run_dep: [libmemcachedutil2]
mongo:
@@ -1108,7 +1091,7 @@ extensions_available:
type: pecl
build_dep: [libssl-dev, libsasl2-dev]
msgpack:
- disabled: [7.3, 7.4]
+ disabled: [7.4]
5.2:
type: pecl
version: 0.5.7
@@ -1159,18 +1142,14 @@ extensions_available:
all:
type: builtin
openssl:
- already_avail: "{{ php_all_versions }}" # Available by default
+ already_avail: "{{ php_all_versions }}"
pcntl:
all:
type: builtin
pcre:
- already_avail: "{{ php_all_versions }}" # Available by default
+ already_avail: "{{ php_all_versions }}"
pdo:
- # https://github.com/docker-library/php/issues/618
- #disabled: [7.0] # TODO: Currently disabled due to bug in built
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
+ already_avail: "{{ php_all_versions }}"
pdo_dblib:
all:
type: builtin
@@ -1201,10 +1180,7 @@ extensions_available:
build_dep: [libpq-dev]
run_dep: [libpq5]
pdo_sqlite:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
- build_dep: [libsqlite3-dev]
+ already_avail: "{{ php_all_versions }}"
pdo_sqlsrv:
disabled: [5.2, 5.3, 5.4, 5.5, 5.6, 7.4]
7.3:
@@ -1259,29 +1235,19 @@ extensions_available:
git_ref: $(git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | sed 's/^.*tags\///g' | grep -E '^v[.0-9]+$' | tail -1)
command: cd build && ./install
phar:
- # https://github.com/docker-library/php/issues/618
- disabled: [5.6, 7.0] # TODO: Currently disabled due to bug in built
- already_avail: [5.3, 5.4, 5.5, 7.1, 7.2, 7.3, 7.4]
+ already_avail: [5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
5.2:
type: pecl
- all:
- type: builtin
build_dep: [libssl-dev]
posix:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
+ already_avail: "{{ php_all_versions }}"
pspell:
all:
type: builtin
build_dep: [libpspell-dev]
run_dep: [libaspell15]
readline:
- disabled: [5.3]
- already_avail: [5.2, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
- build_dep: [libedit-dev, libreadline-dev]
+ already_avail: "{{ php_all_versions }}"
recode:
already_avail: [5.3, 5.4]
all:
@@ -1315,20 +1281,12 @@ extensions_available:
build_dep: [librdkafka-dev]
run_dep: [librdkafka1]
session:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
- configure: --with-mm
- build_dep: [libmm-dev]
+ already_avail: "{{ php_all_versions }}"
shmop:
all:
type: builtin
simplexml:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
- configure: --with-libxml-dir=/usr
- build_dep: [libxml2-dev]
+ already_avail: "{{ php_all_versions }}"
snmp:
all:
type: builtin
@@ -1351,7 +1309,7 @@ extensions_available:
type: builtin
build_dep: [libsodium-dev]
spl:
- disabled: "{{ php_all_versions }}" # TODO: Did not work
+ already_avail: "{{ php_all_versions }}"
sqlsrv:
disabled: [5.2, 5.3, 5.4, 5.5, 5.6, 7.4]
7.3:
@@ -1445,9 +1403,7 @@ extensions_available:
build_dep: [libtidy-dev]
run_dep: [libtidy5]
tokenizer:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
+ already_avail: "{{ php_all_versions }}"
uploadprogress:
7.0:
type: git
@@ -1499,28 +1455,16 @@ extensions_available:
all:
type: pecl
xml:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
- configure: --with-libxml-dir=/usr
- build_dep: [libxml2-dev]
+ already_avail: "{{ php_all_versions }}"
xmlreader:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
- configure: --with-libxml-dir=/usr
- build_dep: [libxml2-dev]
+ already_avail: "{{ php_all_versions }}"
xmlrpc:
all:
type: builtin
configure: --with-libxml-dir=/usr --with-iconv-dir=/usr
build_dep: [libxml2-dev]
xmlwriter:
- already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
- all:
- type: builtin
- configure: --with-libxml-dir=/usr
- build_dep: [libxml2-dev]
+ already_avail: "{{ php_all_versions }}"
xsl:
all:
type: builtin
diff --git a/build/gen-readme.sh b/build/gen-readme.sh
index 1a974888..2bdb7c25 100755
--- a/build/gen-readme.sh
+++ b/build/gen-readme.sh
@@ -35,9 +35,15 @@ get_modules() {
# Retrieve all modules
PHP_MODULES="$( docker run -it --entrypoint=php devilbox/php-fpm:${tag} -m )"
+ ALL_MODULES=
+
+ if docker run -it --entrypoint=find devilbox/php-fpm:${tag} /usr/local/lib/php/extensions -name 'ioncube.so' | grep -q ioncube.so; then
+ ALL_MODULES="ioncube";
+ fi
# Process module string into correct format for README.md
PHP_MODULES="$( echo "${PHP_MODULES}" | sed 's/^\[.*//g' )" # Remove PHP Modules headlines
+ PHP_MODULES="${ALL_MODULES}${PHP_MODULES}" # Append all available modules
PHP_MODULES="$( echo "${PHP_MODULES}" | sort -fu )" # Unique
PHP_MODULES="$( echo "${PHP_MODULES}" | sed '/^\s*$/d' )" # Remove empty lines
PHP_MODULES="$( echo "${PHP_MODULES}" | tr '\r\n' ',' )" # Newlines to commas
diff --git a/tests/prod/08-test-custom-user-scripts.sh b/tests/prod/08-test-custom-user-scripts-1.sh
similarity index 98%
rename from tests/prod/08-test-custom-user-scripts.sh
rename to tests/prod/08-test-custom-user-scripts-1.sh
index 63f70175..ccc064ac 100755
--- a/tests/prod/08-test-custom-user-scripts.sh
+++ b/tests/prod/08-test-custom-user-scripts-1.sh
@@ -23,7 +23,7 @@ FLAVOUR="${3}"
### Check if PHP still starts up with working scripts
###
RUN_SH_HOST="$( mktemp -d )"
-RUN_SH_CONT="/startup.d"
+RUN_SH_CONT="/startup.1.d"
# Fix mount permissions
chmod 0777 "${RUN_SH_HOST}"
diff --git a/tests/prod/09-test-custom-user-scripts-2.sh b/tests/prod/09-test-custom-user-scripts-2.sh
new file mode 100755
index 00000000..eadabd68
--- /dev/null
+++ b/tests/prod/09-test-custom-user-scripts-2.sh
@@ -0,0 +1,62 @@
+#!/usr/bin/env bash
+
+set -e
+set -u
+set -o pipefail
+
+CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
+
+IMAGE="${1}"
+VERSION="${2}"
+FLAVOUR="${3}"
+
+# shellcheck disable=SC1090
+. "${CWD}/../.lib.sh"
+
+
+
+############################################################
+# Tests
+############################################################
+
+###
+### Check if PHP still starts up with working scripts
+###
+RUN_SH_HOST="$( mktemp -d )"
+RUN_SH_CONT="/startup.2.d"
+
+# Fix mount permissions
+chmod 0777 "${RUN_SH_HOST}"
+
+# Add a startup script to execute
+printf "#!/bin/bash\\necho 'abcdefghijklmnopq';\\n" > "${RUN_SH_HOST}/myscript1.sh"
+chmod +x "${RUN_SH_HOST}/myscript1.sh"
+
+# Start PHP-FPM
+did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${RUN_SH_HOST}:${RUN_SH_CONT}" )"
+
+# Wait for both containers to be up and running
+run "sleep 10"
+
+# Check entrypoint for script run
+if ! run "docker logs ${did} | grep 'myscript1.sh'"; then
+ docker_logs "${did}" || true
+ docker_stop "${did}" || true
+ rm -rf "${RUN_SH_HOST}"
+ echo "Failed"
+ exit 1
+fi
+
+# Check entrypoint for script output
+if ! run "docker logs ${did} | grep 'abcdefghijklmnopq'"; then
+ docker_logs "${did}" || true
+ docker_stop "${did}" || true
+ rm -rf "${RUN_SH_HOST}"
+ echo "Failed"
+ exit 1
+fi
+
+
+# Cleanup
+docker_stop "${did}"
+rm -rf "${RUN_SH_HOST}"