J'ai un Dockerfile
avec une commande de construction comme celle-ci:
#install some base extensions
RUN apt-get install -y \
zlib1g-dev \
Zip \
&& docker-php-ext-install Zip
J'obtiens cet avertissement de la sortie de build:
AVERTISSEMENT: l'utilisation de libzip fourni est déconseillée et sera supprimée.
configure: AVERTISSEMENT: Certaines fonctionnalités telles que le cryptage et bzip2 ne sont pas disponibles.
configure: AVERTISSEMENT: utilisez la bibliothèque système et --with-libzip est recommandé.
Quelle est la bonne façon d'installer l'extension Zip sans ces avertissements?
Mon Dockerfile complet ressemble à ceci:
FROM php:7.2-Apache
RUN apt-get clean
RUN apt-get update
#install some basic tools
RUN apt-get install -y \
git \
tree \
vim \
wget \
Subversion
#install some base extensions
RUN apt-get install -y \
zlib1g-dev \
Zip \
&& docker-php-ext-install Zip
#setup composer
RUN curl -sS https://getcomposer.org/installer | php \
&& mv composer.phar /usr/local/bin/ \
&& ln -s /usr/local/bin/composer.phar /usr/local/bin/composer
WORKDIR /var/www/
Il ressemble à PHP ne regroupe plus libzip . Vous devez l'installer . Vous installez zlib1g-dev
, mais installez plutôt libzip-dev
. Cela installe zlib1g-dev
en tant que dépendance et permet au script configure
de détecter que libzip
est installé.
Vous devez ensuite
docker-php-ext-configure Zip --with-libzip
avant d'effectuer l'installation avec
docker-php-ext-install Zip
comme l'indique le dernier avertissement.
En bref: changez la partie pertinente de votre Dockerfile en
#install some base extensions
RUN apt-get install -y \
libzip-dev \
Zip \
&& docker-php-ext-configure Zip --with-libzip \
&& docker-php-ext-install Zip
J'ai vérifié que cela se construit comme prévu.