Xdebug PHP 7.1 PhpStorm远程服务器与Docker。怎么做?

问题描述 投票:0回答:1
Local:   
 - OS: MacOS  
 - IDE: PhpStorm   
 - Debug Port: 10000   
 - DBGp Proxy Host: 127.0.0.1   
 - DBGp Proxy Port: 10000    

Remote server:  
 - OS: Ubuntu  
 - Run project via docker and expose 10000 port    

Docker container:    
 - XDEBUG_CONFIG: "default_enable=1 remote_host=172.30.0.1 remote_enable=1 profiler_enable_trigger=0 remote_port=10000"  
  1. 我在PhpStorm中启用了 "监听调试连接"。
  2. 在终端中运行:ssh -R 10000:127.0.0.1:10000 root@remote-server
  3. 添加断点
  4. 运行网站页面

Xdebug不工作:(

Xdebug日志。

Log opened at 2018-11-27 09:05:03
I: Connecting to configured address/port: 172.30.0.1:10000.
W: Creating socket for '172.30.0.1:10000', poll success, but error: Operation now in progress (29).
E: Could not connect to client. :-(
Log closed at 2018-11-27 09:05:03

我想连接到远程服务器进行调试。我对创建端口转发到docker容器不感兴趣。

我到底做错了什么?

截图。phpstorm settingsdocker compose file (server part)docker inspect server container

php docker phpstorm xdebug
1个回答
0
投票

我尝试使用xdebug与ssh隧道端口转发从远程docker托管的服务器到本地机器,但没有成功。

但使用 ngrok. 你应该:

  1. 安装 ngrok 在你的本地开发机器上。
  2. 在你的本地开发机器上运行 ngrok tcp 9000;
  3. 设置 xdebug.remote_portxdebug.remote_host 根据 ngrok的信息。

如果知道如何通过ssh隧道做同样的事情,请分享。

9000 - 它的xdebug客户端的端口,9000 - PHP Storm中的默认值,对于这个主题应该是10000。

© www.soinside.com 2019 - 2024. All rights reserved.