PHP版本:7.2
Xdebug版本:2.6.0
适配器版本:1.12.1
示例回购:https://github.com/makeshift3ds/vscode-xdebug-docker

我无法让VSCode连接到在Docker中运行的Xdebug . 我已经按照示例和教程,但感觉有些东西丢失了 .

注意: - 如果我在VSCode中启动调试器,则调试器输出在对象中显示 success: true . 但是,在docker容器中的xdebug登录显示没有活动 . 但是,如果我从php-fpm容器运行PHP脚本,Xdebug日志看起来很 Health .

Log opened at 2018-03-13 15:29:11
I: Checking remote connect back address.
I: Checking header 'HTTP_X_FORWARDED_FOR'.
I: Checking header 'REMOTE_ADDR'.
I: Remote address found, connecting to 172.18.0.1:9001.
I: Connected to client. :-)
-> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" fileuri="file:///var/www/html/index.php" language="PHP" xdebug:language_version="7.2.3" protocol_version="1.0" appid="7" idekey="VSCODE"><engine version="2.6.0"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[http://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2018 by Derick Rethans]]></copyright></init>

-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" status="stopping" reason="ok"></response>

Log closed at 2018-03-13 15:29:11
  • 如果我在VSCode中尝试连接并尝试评估某些代码,则表示没有连接 .

  • php-fpm在端口9000上运行,所以我在9001上设置Xdebug . 我可以看到端口是打开的 .

vpnkit          59029 makeshift   19u     IPv4 0x7784b9d434951b53        0t0     TCP *:9001 (LISTEN)
vpnkit          59029 makeshift   20u     IPv6 0x7784b9d42c30a203        0t0     TCP [::1]:9001 (LISTEN)
Code\x20Helper  99786 makeshift   27u     IPv6 0x7784b9d42c30bec3        0t0     TCP *:9001 (LISTEN)