почему memory_limit в php.ini не обновляет размер памяти?

#php #docker #ini

Вопрос:

Добрый день!

Я использую php: 8.0-rc-fpm изображение для своего php-fpm контейнера. Также я использую intrusion библиотеку для создания и обработки изображений. Проблема в том, что не хватает памяти, и каждый раз я получаю сообщение об ошибке:

Фатальная ошибка: Разрешенный размер памяти 134217728 байт исчерпан (пытался выделить 24576 байт)

это означает, что серверу не хватает 128 МБ данных, но когда я добавляю memory.ini запись в файл '' memory_limit = 512 MB «, фактическое значение предела не меняется. Если вы введете команду внутри контейнера:

 php -r "echo ini_get ('memory_limit'). PHP_EOL;"
 

тогда я получаю ответ

 512M
 

Комментарии:

1. переведите название, пожалуйста.

2. Это нормально, что вы говорите PHP, что у него есть 512M для игры, но вы также сказали Докеру об этом?

3. @MikeRobinson ничего не сказал Докеру. Имеет ли контейнер по умолчанию ограничения на ресурсы?

4. Выполняется ли основной вариант использования также из командной строки? Если он работает под управлением Apache или в какой-либо другой постоянной форме, вам потребуется перезагрузить сервер, чтобы изменения сохранились. Кроме того, при работе в постоянном состоянии могут быть ограничения памяти, связанные с родительским процессом.

5. Попробуйте запустить phpinfo() из той же среды, в которой у вас заканчивается память.