我如何找出 ddev 容器出了什么问题,或查看日志?
How can I find out what's going wrong with a ddev container, or see the logs?
我正在使用 ddev 开发一个项目,但我不知道如何解决问题,因为它们隐藏在 运行 所在的容器中。例如,我已经尝试了 ddev logs
,但没有提供足够的信息。
ddev logs
是调查的第一线。它获取 Web 容器的日志(nginx 错误日志和 php-fpm 错误日志,混合在一起)。
额外的方法:
- 您可能(暂时)删除您可能已添加到 .ddev 文件夹中的项目的任何自定义 nginx/php/mysql 配置,因为这些是常见的罪魁祸首。
- 请确保您使用的是与您正在使用的 ddev 版本匹配的当前 docker 图像。我建议删除 .ddev/config.yaml.
中的任何 "webimage" 或 "dbimage" 行
ddev logs -f
将 "follow" 网络日志,因此您可以看到当您点击特定 URL 时会发生什么。
ddev logs -s db
(或者当然 ddev logs -f -s db
会显示数据库容器的日志(MariaDB 日志)
- 使用
ddev ssh
(对于 web 容器)或 ddev ssh -s db
(对于 db 容器)实际进入那里并环顾四周。最重要的日志位于 /var/log/ 和 /var/log/nginx。
请注意,在 ddev v0.18.0 之前,查看已停止容器的日志并不容易(例如,您需要使用 docker logs ddev-<project>-web
),但在 v0.18.0 及更高版本中,ddev logs
在停止的容器上工作。
我正在使用 ddev 开发一个项目,但我不知道如何解决问题,因为它们隐藏在 运行 所在的容器中。例如,我已经尝试了 ddev logs
,但没有提供足够的信息。
ddev logs
是调查的第一线。它获取 Web 容器的日志(nginx 错误日志和 php-fpm 错误日志,混合在一起)。
额外的方法:
- 您可能(暂时)删除您可能已添加到 .ddev 文件夹中的项目的任何自定义 nginx/php/mysql 配置,因为这些是常见的罪魁祸首。
- 请确保您使用的是与您正在使用的 ddev 版本匹配的当前 docker 图像。我建议删除 .ddev/config.yaml. 中的任何 "webimage" 或 "dbimage" 行
ddev logs -f
将 "follow" 网络日志,因此您可以看到当您点击特定 URL 时会发生什么。ddev logs -s db
(或者当然ddev logs -f -s db
会显示数据库容器的日志(MariaDB 日志)- 使用
ddev ssh
(对于 web 容器)或ddev ssh -s db
(对于 db 容器)实际进入那里并环顾四周。最重要的日志位于 /var/log/ 和 /var/log/nginx。
请注意,在 ddev v0.18.0 之前,查看已停止容器的日志并不容易(例如,您需要使用 docker logs ddev-<project>-web
),但在 v0.18.0 及更高版本中,ddev logs
在停止的容器上工作。