Skip to content

Commit 006a6ed

Browse files
committed
feat: cloud extensions
1 parent 91575f9 commit 006a6ed

File tree

1 file changed

+20
-11
lines changed

1 file changed

+20
-11
lines changed

Dockerfile

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -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

1820
RUN \
1921
apk add --no-cache --virtual .deps \
@@ -31,6 +33,8 @@ RUN \
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+
154167
FROM $BASEIMAGE as final
155168

156169
LABEL 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
217232
COPY --from=lz4 /usr/local/lib/php/extensions/no-debug-non-zts-20230831/lz4.so /usr/local/lib/php/extensions/no-debug-non-zts-20230831/
218233
COPY --from=snappy /usr/local/lib/php/extensions/no-debug-non-zts-20230831/snappy.so /usr/local/lib/php/extensions/no-debug-non-zts-20230831/
219234
COPY --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

233242
EXPOSE 80
234243

0 commit comments

Comments
 (0)