From f5f1f458586a96521e21591f87c14f1000021a3e Mon Sep 17 00:00:00 2001 From: Vladyslav Startsev Date: Tue, 3 Dec 2019 12:53:42 +0200 Subject: [PATCH] added cachetool to invalidate shared php cache (APCu, OPcache) without reloading PHP-FPM --- docker-compose.yml | 1 + env-example | 1 + php-fpm/Dockerfile | 16 ++++++++++++++++ 3 files changed, 18 insertions(+) diff --git a/docker-compose.yml b/docker-compose.yml index 4f32e05b..8e84141a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -192,6 +192,7 @@ services: - INSTALL_FAKETIME=${PHP_FPM_INSTALL_FAKETIME} - INSTALL_IONCUBE=${PHP_FPM_INSTALL_IONCUBE} - INSTALL_APCU=${PHP_FPM_INSTALL_APCU} + - INSTALL_CACHETOOL=${PHP_FPM_INSTALL_CACHETOOL} - INSTALL_YAML=${PHP_FPM_INSTALL_YAML} - INSTALL_RDKAFKA=${PHP_FPM_INSTALL_RDKAFKA} - INSTALL_ADDITIONAL_LOCALES=${PHP_FPM_INSTALL_ADDITIONAL_LOCALES} diff --git a/env-example b/env-example index a52f36ef..f3d51ce6 100644 --- a/env-example +++ b/env-example @@ -190,6 +190,7 @@ PHP_FPM_INSTALL_IONCUBE=false PHP_FPM_INSTALL_RDKAFKA=false PHP_FPM_FAKETIME=-0 PHP_FPM_INSTALL_APCU=false +PHP_FPM_INSTALL_CACHETOOL=false PHP_FPM_INSTALL_YAML=false PHP_FPM_INSTALL_ADDITIONAL_LOCALES=false PHP_FPM_INSTALL_MYSQL_CLIENT=false diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index 20474893..01f025b7 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -767,6 +767,22 @@ RUN if [ ${INSTALL_MAILPARSE} = true ]; then \ && docker-php-ext-enable mailparse \ ;fi +########################################################################### +# CacheTool: +########################################################################### + +ARG INSTALL_CACHETOOL=false + +RUN if [ ${INSTALL_CACHETOOL} = true ]; then \ + if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") -ge 1 ]; then \ + curl -sO http://gordalina.github.io/cachetool/downloads/cachetool.phar; \ + else \ + curl http://gordalina.github.io/cachetool/downloads/cachetool-3.2.1.phar -o cachetool.phar; \ + fi && \ + chmod +x cachetool.phar && \ + mv cachetool.phar /usr/local/bin/cachetool \ +;fi + ########################################################################### # Check PHP version: ###########################################################################