如何访问容器的php错误日志?
由于某种原因,在搜索了很长一段时间的各种文章之后,我真的很难找到如何做到这一点。
我使用的是一个简单的php7 apache容器,它看起来像:
RUN apt-get update -y && apt-get install -y \
libpng12-dev \
libfreetype6-dev \
libjpeg62-turbo-dev \
curl \
libcurl4-openssl-dev \
libxpm-dev \
libvpx-dev \
&& docker-php-ext-configure gd \
--with-freetype-dir=/usr/lib/x86_64-linux-gnu/ \
--with-jpeg-dir=/usr/lib/x86_64-linux-gnu/ \
--with-xpm-dir=/usr/lib/x86_64-linux-gnu/ \
--with-vpx-dir=/usr/lib/x86_64-linux-gnu/ \
&& docker-php-ext-install \
pdo \
pdo_mysql \
gd \
curl \
&& a2enmod rewrite \
&& service apache2 restart理想情况下,我只需要查看错误日志的内容,或者在我的机器上本地获取一个新的自定义日志集,这样我就可以很容易地看到站点构建的潜在问题。
感谢您的指点。我发现docker文档在日志主题上非常混乱……
发布于 2017-08-23 20:11:51
发布于 2020-07-12 19:17:06
默认情况下,容器似乎不会将PHP错误记录到STDOUT或STDERR中。我发现当使用php.ini-development配置文件(参见this article中的'Configuration‘)时,它会记录更多有用的信息。
要查看容器的日志,最基本的方法是执行docker ps,找到容器哈希,然后执行docker logs container_hash。
发布于 2017-08-23 20:16:55
所有PHP输出都将在容器中,因此您可以使用所有docker好东西来访问日志……
我最喜欢的是attach,因为它可以让你实时跟踪日志。( docker attach containerName )
还可以使用logs查看过去的日志。docker logs containerName将打印出容器中的所有输出。您可能更喜欢添加--tail=N标志,其中N是要获取的行数。
https://stackoverflow.com/questions/45839323
复制相似问题