如何在 docker 容器中编辑 php.ini?

如何在 docker 容器中编辑 php.ini?

因此,我正在运行 wordpress docker 容器,并且我想增加 php.ini 中设置的上传文件大小限制。我的问题是我在任何地方都找不到该文件。

我使用 docker-compose 文件安装了容器。

答案1

出于开发目的,你可以将它从主机绑定到容器上看看这里

对于生产环境,您可以考虑通过在容器上构建自己的容器来实现容器的个性化。

例如,在您的docker-compose中声明wordpress的docker镜像称为wordpress:5.4.0-php7.2-fpm-alpine

你可以创建自己的 Dockerfile 来编辑基础镜像,它看起来像

FROM wordpress:5.4.0-php7.2-fpm-alpine
COPY ./php.ini /etc/php/7.2/apache2/php.ini

./php.ini是您的修改版本,路径是目的地。

以上两种方法都是持久性的,可以在构建时和启动时应用。但是运行时呢,是否可以在不重新启动容器的情况下更改修改?

当然可以,你可以调用docker cp命令:

docker cp ./php.ini container_name:/etc/php/7.2/apache2/php.ini

但变化不是持久的,注意:上述命令可以双向执行(放入容器并从容器中取出)

为了保留您所做的修改,我知道还有另一种方法:

提交容器修改,更多信息这里

docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

答案2

如果您无法访问 docker 容器中的 php.ini,请尝试在您需要的脚本顶部添加此行:

date_default_timezone_set('Europe/Paris');

相关内容