@@ -13,7 +13,9 @@ ENV PHP_REDIS_VERSION="6.1.0" \
1313 PHP_BROTLI_VERSION="0.15.0" \
1414 PHP_SNAPPY_VERSION="c27f830dcfe6c41eb2619a374de10fd0597f4939" \
1515 PHP_LZ4_VERSION="2f006c3e4f1fb3a60d2656fc164f9ba26b71e995" \
16- PHP_XDEBUG_VERSION="3.3.2"
16+ PHP_XDEBUG_VERSION="3.3.2" \
17+ PHP_OPENTELEMETRY_VERSION="1.1.0" \
18+ PHP_PROTOBUF_VERSION="4.28.3"
1719
1820RUN \
1921 apk add --no-cache --virtual .deps \
3133 imagemagick-dev \
3234 libjpeg-turbo-dev \
3335 jpeg-dev \
36+ zlib-dev \
37+ libpng-dev \
3438 libjxl-dev \
3539 libmaxminddb-dev \
3640 zstd-dev \
@@ -151,6 +155,15 @@ RUN \
151155 ./configure && \
152156 make && make install
153157
158+ FROM compile AS opentelemetry
159+ RUN pecl install opentelemetry-${PHP_OPENTELEMETRY_VERSION}
160+
161+ FROM compile AS protobuf
162+ RUN pecl install protobuf-${PHP_PROTOBUF_VERSION}
163+
164+ FROM compile AS gd
165+ RUN docker-php-ext-install gd
166+
154167FROM $BASEIMAGE as final
155168
156169LABEL maintainer="team@appwrite.io"
@@ -188,6 +201,8 @@ RUN \
188201 libavif \
189202 libheif \
190203 imagemagick-heic \
204+ zlib-dev \
205+ libpng-dev \
191206 libmaxminddb-dev \
192207 certbot \
193208 docker-cli \
@@ -217,18 +232,12 @@ COPY --from=brotli /usr/local/lib/php/extensions/no-debug-non-zts-20230831/brotl
217232COPY --from=lz4 /usr/local/lib/php/extensions/no-debug-non-zts-20230831/lz4.so /usr/local/lib/php/extensions/no-debug-non-zts-20230831/
218233COPY --from=snappy /usr/local/lib/php/extensions/no-debug-non-zts-20230831/snappy.so /usr/local/lib/php/extensions/no-debug-non-zts-20230831/
219234COPY --from=xdebug /usr/local/lib/php/extensions/no-debug-non-zts-20230831/xdebug.so /usr/local/lib/php/extensions/no-debug-non-zts-20230831/
235+ COPY --from=opentelemetry /usr/local/lib/php/extensions/no-debug-non-zts-20230831/opentelemetry.so /usr/local/lib/php/extensions/no-debug-non-zts-20230831/
236+ COPY --from=protobuf /usr/local/lib/php/extensions/no-debug-non-zts-20230831/protobuf.so /usr/local/lib/php/extensions/no-debug-non-zts-20230831/
237+ COPY --from=gd /usr/local/lib/php/extensions/no-debug-non-zts-20230831/gd.so /usr/local/lib/php/extensions/no-debug-non-zts-20230831/
220238
221239# Enable Extensions
222- RUN echo extension=swoole.so >> /usr/local/etc/php/conf.d/swoole.ini
223- RUN echo extension=redis.so >> /usr/local/etc/php/conf.d/redis.ini
224- RUN echo extension=imagick.so >> /usr/local/etc/php/conf.d/imagick.ini
225- RUN echo extension=yaml.so >> /usr/local/etc/php/conf.d/yaml.ini
226- RUN echo extension=maxminddb.so >> /usr/local/etc/php/conf.d/maxminddb.ini
227- RUN echo extension=scrypt.so >> /usr/local/etc/php/conf.d/scrypt.ini
228- RUN echo extension=zstd.so >> /usr/local/etc/php/conf.d/zstd.ini
229- RUN echo extension=brotli.so >> /usr/local/etc/php/conf.d/brotli.ini
230- RUN echo extension=lz4.so >> /usr/local/etc/php/conf.d/lz4.ini
231- RUN echo extension=snappy.so >> /usr/local/etc/php/conf.d/snappy.ini
240+ RUN docker-php-ext-enable swoole redis imagick yaml maxminddb scrypt zstd brotli lz4 snappy opentelemetry protobuf gd
232241
233242EXPOSE 80
234243
0 commit comments