我剛剛在我的機器上安裝了Docker &有一個Nginx/PHP7(FPM)/ MySQL設置工作正常,但在PHP容器上安裝了Xdebug我無法獲取它在我的主機上連接回PHPStorm。Xdebug無法連接回Docker主機
這裏是我的PHP Xdebug的配置...
zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-
20151012/xdebug.so
xdebug.remote_log=/usr/local/var/log/xdebug.log
xdebug.remote_enable=1
xdebug.remote_host=192.168.99.1
xdebug.remote_port=9000
xdebug.remote_connect_back=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_autostart=true
瀏覽時,與Xdebug的啓用Cookie組的容器,有一個連接沒有任何提示。如果我瀏覽本地託管的網站,那麼我知道PHPStorm的收聽是正確的。
在本地機器上,我可以telnet到端口9000 ...
$ telnet 192.168.99.1 9000
Trying 192.168.99.1...
Connected to 192.168.99.1.
Escape character is '^]'.
^]
telnet> quit
Connection closed.
...但是我不能從任一boot2docker VM,或容器。當我嘗試它只是坐在那裏無所事事。但是,VM和容器都可以很好地ping主機。
我試過禁用我的Mac的防火牆,但仍然沒有喜悅。
我不太清楚如何禁用boot2docker虛擬機上的防火牆。
任何洞察爲什麼這不起作用將受到大大歡迎。提前致謝。
謝謝你的提示。我在我的無線適配器上添加了一個橋接的無線適配器,並且我可以在Docker虛擬機中看到一個新的適配器,IP地址爲192.168.1.18(主機爲192.168.1.6),但我仍然無法從遠程登錄VM或容器。你能否提供更多關於如何正確設置的細節? – TobyG
你不應該需要另一座橋。你有沒有嘗試不同的端口,順便說一句? FPM可能會使用9000,因此可能會發生衝突。嘗試使用10000或類似的。您也可以在Mac上執行'nc -l 8888'並從容器中telnet以確認它獨立於xdebug運行。 – ldg
原來重新生成工作的VM。我曾嘗試過其他一切。最後,我刪除了虛擬機,刪除了所有僅限主機的網絡,然後重新創建虛擬機。如果一切都失敗......重啓! – TobyG