Skip to content

Commit 4a8e020

Browse files
committed
feat: add php 8.4
1 parent 7fa830f commit 4a8e020

File tree

14 files changed

+336
-18
lines changed

14 files changed

+336
-18
lines changed

.github/workflows/ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ jobs:
3131
strategy:
3232
fail-fast: false
3333
matrix:
34-
php-versions: ['7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3']
34+
php-versions: ['7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4']
3535
steps:
3636
- name: Checkout code
3737
uses: actions/checkout@v4

runtime/Makefile

+5-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
SHELL := /bin/bash
22
.PHONY: build build-images publish
33

4-
build: build-php-72.zip build-php-73.zip build-php-74.zip build-php-80.zip build-php-81.zip build-php-82.zip build-php-83.zip
4+
build: build-php-72.zip build-php-73.zip build-php-74.zip build-php-80.zip build-php-81.zip build-php-82.zip build-php-83.zip build-php-84.zip
55

66
build-php%.zip: publish-images
77
PHP_VERSION=$$(echo $@ | cut -d'.' -f 1 | cut -d'-' -f 2,3); \
@@ -25,7 +25,8 @@ publish-images-%:
2525
cd ../php-80 ; depot build -t $$RUNTIME_REPO:php-80 . --load --push --build-arg BASE_IMAGE=base --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE; \
2626
cd ../php-81 ; depot build -t $$RUNTIME_REPO:php-81 . --load --push --build-arg BASE_IMAGE=base --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE; \
2727
cd ../php-82 ; depot build -t $$RUNTIME_REPO:php-82 . --load --push --build-arg BASE_IMAGE=base --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE; \
28-
cd ../php-83 ; depot build -t $$RUNTIME_REPO:php-83 . --load --push --build-arg BASE_IMAGE=base --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE
28+
cd ../php-83 ; depot build -t $$RUNTIME_REPO:php-83 . --load --push --build-arg BASE_IMAGE=base --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE; \
29+
cd ../php-84 ; depot build -t $$RUNTIME_REPO:php-84 . --load --push --build-arg BASE_IMAGE=base --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE
2930

3031
publish-images: publish-images-linux_amd64-x86_64 publish-images-linux_arm64-arm64
3132

@@ -44,7 +45,8 @@ publish-dev-images-%:
4445
cd ../php-80 ; depot build -t $$RUNTIME_REPO:php-80 . --load --push --build-arg BASE_IMAGE=base-dev --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE; \
4546
cd ../php-81 ; depot build -t $$RUNTIME_REPO:php-81 . --load --push --build-arg BASE_IMAGE=base-dev --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE; \
4647
cd ../php-82 ; depot build -t $$RUNTIME_REPO:php-82 . --load --push --build-arg BASE_IMAGE=base-dev --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE; \
47-
cd ../php-83 ; depot build -t $$RUNTIME_REPO:php-83 . --load --push --build-arg BASE_IMAGE=base-dev --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE
48+
cd ../php-83 ; depot build -t $$RUNTIME_REPO:php-83 . --load --push --build-arg BASE_IMAGE=base-dev --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE; \
49+
cd ../php-84 ; depot build -t $$RUNTIME_REPO:php-84 . --load --push --build-arg BASE_IMAGE=base-dev --platform=$$DOCKER_PLATFORM --build-arg DOCKER_PLATFORM=$$DOCKER_PLATFORM --build-arg CPU_ARCHITECTURE=$$CPU_ARCHITECTURE
4850

4951
publish-dev-images: publish-dev-images-linux_amd64-x86_64 publish-dev-images-linux_arm64-arm64
5052

runtime/base/Dockerfile

+35
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,41 @@ RUN mkdir -p ${BUILD_DIR} \
7777
${INSTALL_DIR}/sbin \
7878
${INSTALL_DIR}/share
7979

80+
###############################################################################
81+
# ZLIB Build
82+
# https://github.com/madler/zlib/releases
83+
# Needed for:
84+
# - openssl
85+
# - curl
86+
# - php
87+
# Used By:
88+
# - xml2
89+
ENV VERSION_ZLIB=1.3.1
90+
ENV ZLIB_BUILD_DIR=${BUILD_DIR}/zlib
91+
92+
RUN set -xe; \
93+
mkdir -p ${ZLIB_BUILD_DIR}; \
94+
# Download and upack the source code
95+
curl -Ls https://github.com/madler/zlib/releases/download/v${VERSION_ZLIB}/zlib-${VERSION_ZLIB}.tar.xz \
96+
| tar xJC ${ZLIB_BUILD_DIR} --strip-components=1
97+
98+
# Move into the unpackaged code directory
99+
WORKDIR ${ZLIB_BUILD_DIR}/
100+
101+
# Configure the build
102+
RUN set -xe; \
103+
make distclean \
104+
&& CFLAGS="" \
105+
CPPFLAGS="-I${INSTALL_DIR}/include -I/usr/include" \
106+
LDFLAGS="-L${INSTALL_DIR}/lib64 -L${INSTALL_DIR}/lib" \
107+
./configure \
108+
--prefix=${INSTALL_DIR} \
109+
--64
110+
111+
RUN set -xe; \
112+
make install \
113+
&& rm ${INSTALL_DIR}/lib/libz.a
114+
80115
###############################################################################
81116
# OPENSSL Build
82117
# https://github.com/openssl/openssl/releases

runtime/php-72/Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ RUN set -xe \
4848
--with-sodium \
4949
--with-readline \
5050
--with-openssl \
51-
--with-zlib \
52-
--with-zlib-dir \
51+
--with-zlib=${INSTALL_DIR} \
52+
--with-zlib-dir=${INSTALL_DIR} \
5353
--with-curl \
5454
--enable-exif \
5555
--enable-ftp \

runtime/php-73/Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ RUN set -xe \
5353
--with-sodium \
5454
--with-readline \
5555
--with-openssl \
56-
--with-zlib \
57-
--with-zlib-dir \
56+
--with-zlib=${INSTALL_DIR} \
57+
--with-zlib-dir=${INSTALL_DIR} \
5858
--with-curl \
5959
--enable-exif \
6060
--enable-ftp \

runtime/php-74/Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,8 @@ RUN set -xe \
7676
--with-sodium \
7777
--with-readline \
7878
--with-openssl \
79-
--with-zlib \
80-
--with-zlib-dir \
79+
--with-zlib=${INSTALL_DIR} \
80+
--with-zlib-dir=${INSTALL_DIR} \
8181
--with-curl \
8282
--enable-exif \
8383
--enable-ftp \

runtime/php-80/Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@ RUN set -xe \
7575
--with-sodium \
7676
--with-readline \
7777
--with-openssl \
78-
--with-zlib \
79-
--with-zlib-dir \
78+
--with-zlib=${INSTALL_DIR} \
79+
--with-zlib-dir=${INSTALL_DIR} \
8080
--with-curl \
8181
--enable-exif \
8282
--enable-ftp \

runtime/php-81/Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,8 @@ RUN set -xe \
7474
--with-sodium \
7575
--with-readline \
7676
--with-openssl \
77-
--with-zlib \
78-
--with-zlib-dir \
77+
--with-zlib=${INSTALL_DIR} \
78+
--with-zlib-dir=${INSTALL_DIR} \
7979
--with-curl \
8080
--enable-exif \
8181
--enable-ftp \

runtime/php-82/Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,8 @@ RUN set -xe \
7474
--with-sodium \
7575
--with-readline \
7676
--with-openssl \
77-
--with-zlib \
78-
--with-zlib-dir \
77+
--with-zlib=${INSTALL_DIR} \
78+
--with-zlib-dir=${INSTALL_DIR} \
7979
--with-curl \
8080
--enable-exif \
8181
--enable-ftp \

runtime/php-83/Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,8 @@ RUN set -xe \
7474
--with-sodium \
7575
--with-readline \
7676
--with-openssl \
77-
--with-zlib \
78-
--with-zlib-dir \
77+
--with-zlib=${INSTALL_DIR} \
78+
--with-zlib-dir=${INSTALL_DIR} \
7979
--with-curl \
8080
--enable-exif \
8181
--enable-ftp \

runtime/php-84/Dockerfile

+165
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,165 @@
1+
# Base Image to use for build.
2+
ARG BASE_IMAGE=base
3+
# CPU Architecture. Can be "x86_64" or "arm64"
4+
ARG CPU_ARCHITECTURE
5+
# Platform used to build the image. Can be "linux/amd64" or "linux/arm64".
6+
ARG DOCKER_PLATFORM
7+
8+
FROM --platform=${DOCKER_PLATFORM} ymirapp/${BASE_IMAGE}:${CPU_ARCHITECTURE} as php-build
9+
10+
###############################################################################
11+
# Oniguruma
12+
# This library is not packaged in PHP since PHP 7.4.
13+
# See https://github.com/php/php-src/blob/43dc7da8e3719d3e89bd8ec15ebb13f997bbbaa9/UPGRADING#L578-L581
14+
# We do not install the system version because I didn't manage to make it work...
15+
# Ideally we shouldn't compile it ourselves.
16+
# https://github.com/kkos/oniguruma/releases
17+
# Needed by:
18+
# - php mbstring
19+
ENV VERSION_ONIG=6.9.9
20+
ENV ONIG_BUILD_DIR=${BUILD_DIR}/oniguruma
21+
RUN set -xe; \
22+
mkdir -p ${ONIG_BUILD_DIR}; \
23+
curl -Ls https://github.com/kkos/oniguruma/releases/download/v${VERSION_ONIG}/onig-${VERSION_ONIG}.tar.gz \
24+
| tar xzC ${ONIG_BUILD_DIR} --strip-components=1
25+
WORKDIR ${ONIG_BUILD_DIR}/
26+
RUN set -xe; \
27+
./configure --prefix=${INSTALL_DIR}; \
28+
make -j $(nproc); \
29+
make install
30+
31+
32+
ENV VERSION_PHP=8.4.1
33+
34+
35+
ENV PHP_BUILD_DIR=${BUILD_DIR}/php
36+
RUN set -xe; \
37+
mkdir -p ${PHP_BUILD_DIR}; \
38+
# Download and upack the source code
39+
# --location will follow redirects
40+
# --silent will hide the progress, but also the errors: we restore error messages with --show-error
41+
# --fail makes sure that curl returns an error instead of fetching the 404 page
42+
curl --location --silent --show-error --fail https://www.php.net/get/php-${VERSION_PHP}.tar.gz/from/this/mirror \
43+
| tar xzC ${PHP_BUILD_DIR} --strip-components=1
44+
# Move into the unpackaged code directory
45+
WORKDIR ${PHP_BUILD_DIR}/
46+
47+
# Configure the build
48+
# -fstack-protector-strong : Be paranoid about stack overflows
49+
# -fpic : Make PHP's main executable position-independent (improves ASLR security mechanism, and has no performance impact on x86_64)
50+
# -fpie : Support Address Space Layout Randomization (see -fpic)
51+
# -O3 : Optimize for fastest binaries possible.
52+
# -I : Add the path to the list of directories to be searched for header files during preprocessing.
53+
# --enable-option-checking=fatal: make sure invalid --configure-flags are fatal errors instead of just warnings
54+
# --enable-ftp: because ftp_ssl_connect() needs ftp to be compiled statically (see https://github.com/docker-library/php/issues/236)
55+
# --enable-mbstring: because otherwise there's no way to get pecl to use it properly (see https://github.com/docker-library/php/issues/195)
56+
# --with-zlib and --with-zlib-dir: See https://stackoverflow.com/a/42978649/245552
57+
# --with-pear: necessary for `pecl` to work (to install PHP extensions)
58+
#
59+
RUN set -xe \
60+
&& ./buildconf --force \
61+
&& CFLAGS="-fstack-protector-strong -fpic -fpie -O3 -I${INSTALL_DIR}/include -I/usr/include -ffunction-sections -fdata-sections" \
62+
CPPFLAGS="-fstack-protector-strong -fpic -fpie -O3 -I${INSTALL_DIR}/include -I/usr/include -ffunction-sections -fdata-sections" \
63+
LDFLAGS="-L${INSTALL_DIR}/lib64 -L${INSTALL_DIR}/lib -Wl,-O1 -Wl,--strip-all -Wl,--hash-style=both -pie" \
64+
./configure \
65+
--prefix=${INSTALL_DIR} \
66+
--enable-option-checking=fatal \
67+
--enable-sockets \
68+
--with-config-file-path=${INSTALL_DIR}/etc/php \
69+
--with-config-file-scan-dir=${INSTALL_DIR}/etc/php/conf.d:/var/task/php/conf.d \
70+
--enable-fpm \
71+
--disable-cgi \
72+
--enable-cli \
73+
--disable-phpdbg \
74+
--with-sodium \
75+
--with-readline \
76+
--with-openssl \
77+
--with-zlib=${INSTALL_DIR} \
78+
--with-curl \
79+
--enable-exif \
80+
--enable-ftp \
81+
--with-gettext \
82+
--enable-mbstring \
83+
--with-pdo-mysql=shared,mysqlnd \
84+
--with-mysqli \
85+
--enable-pcntl \
86+
--with-zip \
87+
--enable-bcmath \
88+
--enable-intl=shared \
89+
--enable-soap \
90+
--with-xsl=${INSTALL_DIR} \
91+
--with-pear
92+
RUN make -j $(nproc)
93+
# Run `make install` and override PEAR's PHAR URL because pear.php.net is down
94+
RUN set -xe; \
95+
make install PEAR_INSTALLER_URL='https://github.com/pear/pearweb_phars/raw/master/install-pear-nozlib.phar'; \
96+
{ find ${INSTALL_DIR}/bin ${INSTALL_DIR}/sbin -type f -perm +0111 -exec strip --strip-all '{}' + || true; }; \
97+
make clean; \
98+
cp php.ini-production ${INSTALL_DIR}/etc/php/php.ini
99+
100+
# Install extensions using pecl
101+
RUN pecl install APCu
102+
RUN pecl install igbinary
103+
RUN pecl install msgpack
104+
RUN pecl install zstd
105+
106+
# Build extensions
107+
WORKDIR ${IMAGICK_BUILD_DIR}
108+
RUN set -xe; \
109+
pecl download imagick-${VERSION_IMAGICK_EXTENSION}; \
110+
tar xzf imagick-${VERSION_IMAGICK_EXTENSION}.tgz
111+
WORKDIR ${IMAGICK_BUILD_DIR}/imagick-${VERSION_IMAGICK_EXTENSION}
112+
RUN set -xe; \
113+
phpize; \
114+
./configure --with-imagick=${INSTALL_DIR}; \
115+
make -j $(nproc); \
116+
make install;
117+
118+
RUN set -xe; \
119+
mkdir -p ${RELAY_BUILD_DIR}; \
120+
RELAY_CPU_ARCHITECTURE=$(arch | sed -e 's/arm64/aarch64/;s/amd64\|x86_64/x86-64/') && \
121+
curl -L "https://builds.r2.relay.so/v${VERSION_RELAY_EXTENSION}/relay-v${VERSION_RELAY_EXTENSION}-php8.4-centos7-${RELAY_CPU_ARCHITECTURE}.tar.gz" \
122+
| tar xzC ${RELAY_BUILD_DIR} --strip-components=1
123+
WORKDIR ${RELAY_BUILD_DIR}/
124+
RUN cp relay.ini ${INSTALL_DIR}/etc/php/conf.d/50-relay.ini; \
125+
cp relay-pkg.so ${INSTALL_DIR}/lib/php/extensions/no-debug-non-zts-20230831/relay.so; \
126+
sed -i "s/00000000-0000-0000-0000-000000000000/$(cat /proc/sys/kernel/random/uuid)/" ${INSTALL_DIR}/lib/php/extensions/no-debug-non-zts-20230831/relay.so;
127+
128+
# Install Composer
129+
RUN curl -sS https://getcomposer.org/installer | ${INSTALL_DIR}/bin/php -- --install-dir=${INSTALL_DIR}/bin/ --filename=composer
130+
131+
# Symlink all our binaries into /opt/bin so that Lambda sees them in the path.
132+
RUN mkdir -p /opt/bin \
133+
&& cd /opt/bin \
134+
&& ln -s ../ymir/bin/* . \
135+
&& ln -s ../ymir/sbin/* .
136+
137+
# Remove extra files to make the layers as slim as possible
138+
COPY clean.sh /tmp
139+
RUN /tmp/clean.sh && rm /tmp/clean.sh
140+
141+
# Copy config files
142+
COPY php.ini ${INSTALL_DIR}/etc/php/conf.d
143+
COPY php-fpm.conf ${INSTALL_DIR}/etc/php-fpm.d
144+
145+
# Build PHP runtime
146+
RUN git clone https://github.com/ymirapp/php-runtime.git /tmp/runtime-build \
147+
&& cd /tmp/runtime-build \
148+
&& git checkout tags/v1.12.4 \
149+
&& cd /opt \
150+
&& cp -R /tmp/runtime-build/composer.json /tmp/runtime-build/composer.lock /tmp/runtime-build/runtime/bootstrap /tmp/runtime-build/runtime/runtime.php /tmp/runtime-build/src /tmp/runtime-build/templates ./ \
151+
&& chmod 0555 /opt/bootstrap /opt/runtime.php \
152+
&& composer install --no-dev
153+
154+
# Now we start back from a clean image.
155+
# We get rid of everything that is unnecessary (build tools, source code, and anything else
156+
# that might have created intermediate layers for docker) by copying online the /opt directory.
157+
FROM --platform=${DOCKER_PLATFORM} public.ecr.aws/lambda/provided:al2-${CPU_ARCHITECTURE}
158+
ENV PATH="/opt/bin:${PATH}" \
159+
LD_LIBRARY_PATH="/opt/ymir/lib64:/opt/ymir/lib"
160+
161+
# Copy everything we built above into the same dir on the base AmazonLinux container.
162+
COPY --from=php-build /opt /opt
163+
164+
# Needed for building the layer
165+
COPY --from=php-build /usr/lib64 /usr/lib64

runtime/php-84/clean.sh

+45
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# ------------------------------------------
2+
# This script cleans extra files from /opt
3+
# to keep the layers as small as possible.
4+
# ------------------------------------------
5+
6+
# Stop on error
7+
set -e
8+
# Treat unset variables and parameters as an error.
9+
set -u
10+
11+
# Strip all the unneeded symbols from shared libraries to reduce size.
12+
find /opt/ymir -type f -name "*.so*" -exec strip --strip-unneeded {} \;
13+
find /opt/ymir -type f -name "*.a"|xargs rm
14+
find /opt/ymir -type f -name "*.la"|xargs rm
15+
find /opt/ymir -type f -name "*.dist"|xargs rm
16+
find /opt/ymir -type f -executable -exec sh -c "file -i '{}' | grep -q 'x-executable; charset=binary'" \; -print|xargs strip --strip-all
17+
18+
# Cleanup all the binaries we don't want.
19+
find /opt/ymir/sbin -mindepth 1 -maxdepth 1 ! -name "composer" ! -name "php" ! -name "php-fpm" -exec rm {} \+
20+
find /opt/ymir/bin -mindepth 1 -maxdepth 1 ! -name "composer" ! -name "php" ! -name "php-fpm" -exec rm {} \+
21+
find /opt/bin -mindepth 1 -maxdepth 1 ! -name "composer" ! -name "php" ! -name "php-fpm" -exec rm {} \+
22+
23+
# Cleanup all the files we don't want either
24+
# We do not support running pear functions in Lambda
25+
rm -rf /opt/ymir/lib/php/PEAR
26+
rm -rf /opt/ymir/share
27+
rm -rf /opt/ymir/include
28+
rm -rf /opt/ymir/{lib,lib64}/pkgconfig
29+
rm -rf /opt/ymir/{lib,lib64}/cmake
30+
rm -rf /opt/ymir/lib/xml2Conf.sh
31+
find /opt/ymir/lib/php -mindepth 1 -maxdepth 1 -type d -a ! -name "extensions" -exec rm -rf {} \;
32+
find /opt/ymir/lib/php -mindepth 1 -maxdepth 1 -type f -exec rm -rf {} \;
33+
rm -rf /opt/ymir/lib/php/test
34+
rm -rf /opt/ymir/lib/php/doc
35+
rm -rf /opt/ymir/lib/php/docs
36+
rm -rf /opt/ymir/tests
37+
rm -rf /opt/ymir/doc
38+
rm -rf /opt/ymir/docs
39+
rm -rf /opt/ymir/man
40+
rm -rf /opt/ymir/php
41+
rm -rf /opt/ymir/www
42+
rm -rf /opt/ymir/cfg
43+
rm -rf /opt/ymir/libexec
44+
rm -rf /opt/ymir/var
45+
rm -rf /opt/ymir/data

runtime/php-84/php-fpm.conf

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
; Logging anywhere on disk doesn't make sense on lambda since instances are ephemeral
2+
error_log = /dev/null
3+
pid = /tmp/.ymir/php-fpm.pid
4+
; Log above warning because PHP-FPM logs useless notices
5+
; We must comment this flag else uncaught exceptions/fatal errors are not reported in the logs!
6+
; TODO: report that to the PHP bug tracker
7+
;log_level = 'warning'
8+
9+
[default]
10+
pm = static
11+
; We only need one child because a lambda can process only one request at a time
12+
pm.max_children = 1
13+
listen = /tmp/.ymir/php-fpm.sock
14+
; Allows PHP processes to access the lambda's environment variables
15+
clear_env = no
16+
; Forward stderr of PHP processes to stderr of PHP-FPM (so that it can be sent to cloudwatch)
17+
catch_workers_output = yes
18+
; New PHP 7.3 option that disables a verbose log prefix
19+
decorate_workers_output = no
20+
; Limit the number of core dump logs to 1 to avoid filling up the /tmp disk
21+
rlimit_core = 1

0 commit comments

Comments
 (0)