pecl удаляется из контейнера после использования docker-php-ext-install - PullRequest
0 голосов
/ 23 января 2019

Итак, моя проблема в том, что содержимое папки /usr/local/lib/php/ удаляется после использования команды docker-php-ext-install

Я создал файл Docker, который успешно создавался на моем компьютере, проблема началась, когда мой коллега-разработчик клонировал мой репозиторий, и у него возникла ошибка: Could not open input file: /usr/local/lib/php/peclcmd.php при попытке выполнить команду yes '' | pecl install mcrypt-1.0.1 Я отладил проблему, и содержимое папки /usr/local/lib/php/:

Архив сборки Консоль расширений doc для данных OS PEAR pearcmd.php PEAR.php peclcmd.php Структуры System.php тест XML

После первой команды с docker-php-ext-install единственная оставшаяся папка - extensions

Это Dockerfile:

FROM quay.io/alexcheng1982/apache2-php7:7.2.12

ENV MAGENTO_VERSION 2.3.0
ENV INSTALL_DIR /var/www/html
ENV COMPOSER_HOME /var/www/.composer/

RUN curl -sS https://getcomposer.org/installer | php \
    && mv composer.phar /usr/local/bin/composer \
    && composer global require hirak/prestissimo
COPY ./auth.json $COMPOSER_HOME

RUN requirements="libpng12-dev libmcrypt-dev libmcrypt4 libcurl3-dev libfreetype6 libjpeg-turbo8 libjpeg-turbo8-dev libpng12-dev libfreetype6-dev libicu-dev libxslt1-dev unzip" \
    && apt-get update \
    && apt-get install -y $requirements \
    && rm -rf /var/lib/apt/lists/* \
    && docker-php-ext-install pdo_mysql \
    && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
    && docker-php-ext-install gd \
    && docker-php-ext-install mbstring \
    && docker-php-ext-install zip \
    && docker-php-ext-install intl \
    && docker-php-ext-install xsl \
    && docker-php-ext-install soap \
    && docker-php-ext-install bcmath \
    && requirementsToRemove="libpng12-dev libmcrypt-dev libcurl3-dev libpng12-dev libfreetype6-dev libjpeg-turbo8-dev" \
    && apt-get purge --auto-remove -y $requirementsToRemove

RUN apt-get update \
    && apt-get install -y libmcrypt-dev \
    && yes '' | pecl install mcrypt-1.0.1 \
    && echo 'extension=mcrypt.so' > /usr/local/etc/php/conf.d/mcrypt.ini

Docker версия 18.09.1, docker-compose версия 1.22.0

...