找不到php:5-apache mcrypt.h

时间:2018-08-30 12:36:44

标签: docker mcrypt php-5.6

我正在处理一些旧项目(Laravel 4.2),该项目使用mcrypt和php5并想在docker上运行它。这是我的dockerfile

FROM php:5-apache

COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

RUN apt-get update &&\
    apt-get install -y \
    git \
    libpng-dev \
    zlib1g-dev \
    zip \
    unzip &&\
    a2enmod rewrite

RUN docker-php-ext-install pdo 
RUN docker-php-ext-install pdo_mysql 
RUN docker-php-ext-install zip
RUN docker-php-ext-install gd 
RUN docker-php-ext-install pcntl  
RUN docker-php-ext-install mcrypt  

运行后,我收到消息:

  

配置:错误:找不到mcrypt.h。请重新安装libmcrypt。

我尝试在上述文件的libmcrypt下添加apt-get install,但得到:

  

E:无法找到软件包libmcrypt

我以类似的方式尝试添加php5-mcrypt,但得到:

  

E:软件包“ php5-mcrypt”没有安装候选对象

如果我使用FROM php:5-apache-jessie(并与上面结合)并在RUN rm /etc/apt/preferences.d/no-debian-php之前添加行RUN apt-get update &&\,我仍然会遇到上述错误。

问题:如何解决此问题?

1 个答案:

答案 0 :(得分:0)

而不是使用libmcryptphp5-mcrypt(在行apt-get install -y \下),只需在dockerfile中使用以下库即可:

libmcrypt-dev \