【问题标题】:Minikube with PhpStorm and XdebugMinikube 与 PhpStorm 和 Xdebug
【发布时间】:2022-01-18 10:54:34
【问题描述】:

我开发了一个基于 PHP 的应用程序。这个应用程序实际上在 Kubernetes 中运行,主要在我的机器上使用 minikube。我使用 PhpStorm 作为 IDE,也使用 Xdebug 进行调试。

我从研究中了解到,当您使用 Xdebug 启动 PhpStorm 时,它将开始侦听端口(默认为 9000)。当我连接到我的容器(在 minikube 中)时,我可以使用 netcat 访问 IDE 的 9000 端口:

nc <my_ip_adress> 9000

这会显示一条消息,告诉我连接已打开,因此我可以从容器访问 IDE。

然后,当我尝试使用 Xdebug 时,它无法正常工作,并且 Xdebug 不会在断点处停止。我猜 IDE 也应该到达容器,那部分我不确定,我不知道该怎么做..

有人已经用 minikube 和 PhpStorm / Xdebug 设置过这种配置吗?

【问题讨论】:

  • 如何在 PHPStorm 和浏览器中开始调试?
  • 是的,上面的一切都被遵循了。该配置正在使用 docker-compose。自从我们用 minikube 替换了 docker-compose 后,它就不起作用了。对于您的第一个问题,在 PhpStorm 工具栏上,我单击“开始侦听 PHP 调试连接”按钮开始侦听传入的 PHP 调试连接。如果这回答了您的问题
  • 您应该提供您已完成的步骤的准确可重复描述,包括问题中的日志和分析结果。

标签: phpstorm xdebug minikube


【解决方案1】:

如果您尝试调试其中包含 xdebug_info() 的脚本,它会准确告诉您 Xdebug 尝试做什么(如果有的话)。

您也可以通过设置xdebug.log=/tmp/xdebug.logxdebug.log_level=10 来创建一个日志文件,然后这个日志文件将显示更详细的内容。

请注意,虽然可以打开连接,但您可能没有正确进程。端口9000 也被PHP-FPM 使用,这就是Xdebug 3 现在默认使用9003 的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-02
    • 2022-01-05
    • 2021-08-28
    • 1970-01-01
    • 1970-01-01
    • 2018-12-19
    • 2016-01-07
    • 2015-09-25
    相关资源
    最近更新 更多