diff --git a/README.md b/README.md
index 23989ed..3324b00 100644
--- a/README.md
+++ b/README.md
@@ -410,6 +410,7 @@ Here's the list of all the supported environment variables:
| | `IPE_DEBUG=1` | By setting this environment variable, the script will print all the commands it executes (it will be very verbose, useful only for debug purposes) |
| | `IPE_PROCESSOR_COUNT` | By default all available processors. Set this environment variable to override the number of processors detected by the script (used for parallel compilation) |
| | `IPE_DONT_ENABLE=1` | By default the script will install and enable the extensions.
If you want to only install them (without enabling them) you can set this environment variable.
To enable the extensions at a later time you can execute the command `docker-php-ext-enable-` (for example: `docker-php-ext-enable-xdebug`).
**Beware**: installing some PHP extensions requires that other PHP extensions are already enabled, so use this feature wisely. |
+| | `IPE_SKIP_CHECK=1` | By default the script will check if the extensions can be enabled: if you want to skip this check, you can use this flag.
**Beware**: extensions may be enabled even if they break PHP: use this function wisely. |
| | `IPE_KEEP_SYSPKG_CACHE=1` | By default the script will clear the apt/apk/pear cache in order to save disk space. You can disable it by setting this environment variable |
| lzf | `IPE_LZF_BETTERCOMPRESSION=1` | By default `install-php-extensions` compiles the `lzf` extension to prefer speed over size; you can use this environment variable to compile it preferring size over speed |
| event | `IPE_EVENT_NAMESPACE=`... | By default, the `event` classes are defined in the root namespace. You can use this environment variable to specify a custom namespace |
diff --git a/install-php-extensions b/install-php-extensions
index b2355e4..3c68e11 100755
--- a/install-php-extensions
+++ b/install-php-extensions
@@ -2640,13 +2640,18 @@ EOF
esac
;;
esac
- php -r 'return;' >/dev/null 2>/dev/null || true
- installBundledModule_errAfter="$(php -r 'return;' 2>&1 || true)"
- if test "$installBundledModule_errAfter" != "$installBundledModule_errBefore"; then
- printf 'PHP has problems after installing the "%s" extension:\n%s\n' "$1" "$installBundledModule_errAfter" >&2
- rm "$PHP_INI_DIR/conf.d/docker-php-ext-$1.ini" || true
- return 1
- fi
+ case "${IPE_SKIP_CHECK:-}" in
+ 1 | y* | Y*) ;;
+ *)
+ php -r 'return;' >/dev/null 2>/dev/null || true
+ installBundledModule_errAfter="$(php -r 'return;' 2>&1 || true)"
+ if test "$installBundledModule_errAfter" != "$installBundledModule_errBefore"; then
+ printf 'PHP has problems after installing the "%s" extension:\n%s\n' "$1" "$installBundledModule_errAfter" >&2
+ rm "$PHP_INI_DIR/conf.d/docker-php-ext-$1.ini" || true
+ return 1
+ fi
+ ;;
+ esac
}
# Fetch a tar.gz file, extract it and returns the path of the extracted folder.
@@ -4229,7 +4234,12 @@ installRemoteModule() {
fi
postProcessModule "$installRemoteModule_module"
if test $installRemoteModule_manuallyInstalled -lt 2; then
- checkModuleWorking "$installRemoteModule_module" "$installRemoteModule_ini_basename" "$installRemoteModule_ini_extra"
+ case "${IPE_SKIP_CHECK:-}" in
+ 1 | y* | Y*) ;;
+ *)
+ checkModuleWorking "$installRemoteModule_module" "$installRemoteModule_ini_basename" "$installRemoteModule_ini_extra"
+ ;;
+ esac
enablePhpExtension "$installRemoteModule_module" "$installRemoteModule_ini_basename" "$installRemoteModule_ini_extra"
fi
}