从浏览器打开页面时,我已经能够让我的 PHP 脚本在 PhpStorm 中触发我的侦听器。我只需要在 docker 中安装 Xdebug,并配置它xdebug.remote_connect_back = On
xdebug.remote_enable = On
xdebug.remote_autostart = Off现在我希望在从 docker 中的 PHP CLI 调用脚本时触发它。我尝试了几个选项,php -dxdebug.remote_enable=1 -dxdebug.remote_autostart=1 -dxdebug.remote_connect_back=1 -dxdebug.idekey=PHPSTORM -dxdebug.remote_port=9000 myscript.php但没有成功。我错过了什么吗?
2 回答
慕田峪9158850
TA贡献1794条经验 获得超7个赞
从 docker 内部,脚本不知道应该将调试会话发送到哪个主机。我只需要从 docker 的 POV 中找到我的 PC ip,并将其用作主机。
找到它并ip addr寻找docker0入口,然后将其用作主机:
export PHP_IDE_CONFIG="serverName=localhost"
php -dxdebug.remote_enable=1 -dxdebug.remote_autostart=1 -dxdebug.remote_connect_back=1 -dxdebug.idekey=PHPSTORM -dxdebug.remote_port=9000 -dxdebug.remote_host=172.17.0.4 myscript.php
繁星coding
TA贡献1797条经验 获得超4个赞
需要Dockerfile
有EXPOSE 9000
(打开端口:9000
)
... 否则您将无法xdebug
与外界联系。
把IDE放到容器里是有问题的。
- 2 回答
- 0 关注
- 154 浏览
添加回答
举报
0/150
提交
取消