在Docker中访问php错误日志

Doi*_*gey 3 php docker

如何访问容器的php错误日志?

由于某些原因,经过很长时间的搜索各种文章之后,我真的很难找到如何做的方法。

我正在使用一个简单的php7 apache容器,它看起来像:FROM php:7-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
Run Code Online (Sandbox Code Playgroud)

理想情况下,我只需要查看错误日志的内容或在计算机上本地获取新的自定义日志集,就可以轻松地查看网站构建中的潜在问题。

任何指针表示赞赏。我发现docker文档在日志主题上非常混乱...

Edw*_*win 8

它存在以下docker命令:

docker logs -f --details containerName
Run Code Online (Sandbox Code Playgroud)

这将向您显示mysql和php错误日志文件

有关更多信息,请查看文档:docker日志

  • 当我添加 --details 来检查 php-fpm 日志`docker logs --details docker_php-fpm_1` 我没有得到更多细节。一切都保持不变。只是基本的:`172.25.0.8 - 30/Jan/2019:11:06:52 +0000 "POST /index.php" 500 172.25.0.8 - 30/Jan/2019:11:06:59 +0000 "GET /index .php" 200 172.25.0.8 - 31/Jan/2019:00:49:46 +0000 "GET /index.php" 404 172.25.0.8 - 31/Jan/2019:00:50:28 +0000 "GET /info .php" 200` (6认同)

Mag*_*ode 5

默认情况下,容器似乎不会将 PHP 错误记录到 STDOUT 或 STDERR。我发现,使用时php.ini-development配置文件(见“配置”在这篇文章中),它记录了很多有用的信息。

要查看容器的日志,最基本的方法是执行docker ps,找到容器哈希,然后执行docker logs container_hash

  • 这次真是万分感谢!自从在构建 Docker 容器时使用 `mv "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini"` 后终于得到了我的 PHP 日志 (2认同)