How to install mcrypt on Docker

自古美人都是妖i 提交于 2019-12-19 19:47:42

问题


I have a Docker Container with Phalcon3 and php 7. I am trying to install the php extension Mcrypt without luck.

If I do ssh to the container, and execute:

apt-get update
apt-get install php7.0-mcrypt  

I get the following:

E: Unable to locate package php7.0-mcrypt
E: Couldn't find any package by regex 'php7.0-mcrypt'

Is there a way to get it installed?


回答1:


Lets look at official manual for php docker image Section PHP Core Extensions

For example, if you want to have a PHP-FPM image with iconv, mcrypt and gd extensions, you can inherit the base image that you like, and write your own Dockerfile like this:

FROM php:7.0-fpm
RUN apt-get update && apt-get install -y \
        libfreetype6-dev \
        libjpeg62-turbo-dev \
        libmcrypt-dev \
        libpng-dev \
    && docker-php-ext-install -j$(nproc) iconv mcrypt \
    && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
    && docker-php-ext-install -j$(nproc) gd

Rember, you must install dependencies for your extensions manually. If an extension needs custom configure arguments, you can use the docker-php-ext-configure script like this example. There is no need to run docker-php-source manually in this case, since that is handled by the configure and install scripts.




回答2:


From PHP manual:

This extension has been moved to the » PECL repository and is no longer bundled with PHP as of PHP 7.2.0.

So in your Dockerfile you have to:

RUN apt-get install libmcrypt-dev
RUN pecl install mcrypt-1.0.1 && docker-php-ext-enable mcrypt


来源:https://stackoverflow.com/questions/47181369/how-to-install-mcrypt-on-docker

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!