如何修改 docker 容器中 php.ini 中的最大内存限制

如何修改 docker 容器中 php.ini 中的最大内存限制

在 MAC 上的 docker 容器中,我收到 php 内存错误:

Fatal error:  Allowed memory size of 404750336 bytes exhausted (tried to allocate 266342400 bytes

我如何才能找到 php.ini 文件的位置,或者如何在 docker 中修改这个参数?

答案1

在 Dockerfile 中添加以下行即可

RUN echo 'memory_limit = 2048M' >> /usr/local/etc/php/conf.d/docker-php-memlimit.ini;

答案2

取决于图像,但通常这就足够了

ENV PHP_MEMORY_LIMIT=128M

在 - 的里面Dockerfile

谨防:该单位是单身的字母,M表示 MB(或GGB)。
否则,它将默默忽略该值并保留默认限制(64M?执行操作RUN echo $PHP_MEMORY_LIMIT以了解它)。
我经常因为习惯而陷入这个陷阱。

相关内容