Skip to content

Commit 81017a6

Browse files
authored
fix(php): module build
1 parent df0316d commit 81017a6

1 file changed

Lines changed: 20 additions & 65 deletions

File tree

Dockerfile

Lines changed: 20 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -24,71 +24,26 @@ RUN curl -L https://phar.phpunit.de/phpunit-8.phar > /usr/local/bin/phpunit \
2424

2525
# install the PHP extensions we need
2626
# see https://docs.nextcloud.com/server/12/admin_manual/installation/source_installation.html
27-
RUN set -ex; \
28-
\
29-
savedAptMark="$(apt-mark showmanual)"; \
30-
\
31-
apt-get update; \
32-
apt-get install -y --no-install-recommends \
33-
libcurl4-openssl-dev \
34-
libfreetype6-dev \
35-
libicu-dev \
36-
libjpeg-dev \
37-
libldap2-dev \
38-
libmcrypt-dev \
39-
libmemcached-dev \
40-
libpng-dev \
41-
libpq-dev \
42-
libxml2-dev \
43-
libmagickwand-dev \
44-
libsmbclient-dev \
45-
libzip-dev \
46-
; \
47-
\
48-
debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)"; \
49-
docker-php-ext-configure gd --with-freetype --with-jpeg; \
50-
docker-php-ext-configure ldap --with-libdir="lib/$debMultiarch"; \
51-
docker-php-ext-install \
52-
exif \
53-
gd \
54-
intl \
55-
ldap \
56-
pcntl \
57-
pdo_mysql \
58-
pdo_pgsql \
59-
zip \
60-
; \
61-
\
62-
# pecl will claim success even if one install fails, so we need to perform each install separately
63-
pecl install APCu; \
64-
pecl install memcached; \
65-
pecl install redis; \
66-
pecl install imagick; \
67-
pecl install xdebug; \
68-
pecl install smbclient; \
69-
\
70-
docker-php-ext-enable \
71-
apcu \
72-
memcached \
73-
redis \
74-
imagick \
75-
xdebug \
76-
smbclient \
77-
; \
78-
\
79-
# reset apt-mark's "manual" list so that "purge --auto-remove" will remove all build dependencies
80-
apt-mark auto '.*' > /dev/null; \
81-
apt-mark manual $savedAptMark; \
82-
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
83-
| awk '/=>/ { print $3 }' \
84-
| sort -u \
85-
| xargs -r dpkg-query -S \
86-
| cut -d: -f1 \
87-
| sort -u \
88-
| xargs -rt apt-mark manual; \
89-
\
90-
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
91-
rm -rf /var/lib/apt/lists/*
27+
RUN curl -sSLf \
28+
-o /usr/local/bin/install-php-extensions \
29+
https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
30+
chmod +x /usr/local/bin/install-php-extensions
31+
32+
RUN install-php-extensions \
33+
apcu \
34+
exif \
35+
gd \
36+
imagick \
37+
intl \
38+
ldap \
39+
memcached \
40+
pcntl \
41+
pdo_mysql \
42+
pdo_pgsql \
43+
redis \
44+
smbclient \
45+
xdebug \
46+
zip
9247

9348
# samba
9449
RUN { \

0 commit comments

Comments
 (0)