我在Docker上運行PHP應用程序,我想使用XDebug進行調試。 在我的碼頭工人,撰寫添加以下線路中的phpfpm部分:Xdebug(Docker容器內部)忽略XDEBUG_CONFIG環境變量
environment:
XDEBUG_CONFIG: "remote_enable=1 remote_host=192.168.110.29 remote_port=9000 idekey=PHPSTORM remote_autostart=1"
PHP_IDE_CONFIG: "serverName=reports.dev"
我以正確的方式配置PHPStorm,監聽端口9000和運行應用程序。
該應用程序完美地工作,但XDebug似乎沒有工作。
如果我將php.ini文件中的配置行移動到調試器中,除了服務器名稱爲空且我無法調試(這就是爲什麼我嘗試遵循docker-compose配置方式)的事實。
如果在Docker容器中運行echo $ XDEBUG_CONFIG,輸出是正確的,但是XDebug似乎不會讀取Env變量。
1)你服務/嘗試調試網頁?如果是這樣的 - 配置的服務器名稱存在(尤其是如果它nginx的 - 很多時候它是空白)。 2)你如何啓動容器?我的意思是 - 您使用PhpStorm這個,或者它從外部(終端)進行管理? https://youtrack.jetbrains.com/issue/WI-33800 – LazyOne
1)是的,我正在調試網頁,是的,nginx中的服務器名稱沒有定義,因爲代碼不在容器內,所以我有一個docker爲我所有的項目構成,我不願意改變它。 2)我使用在終端外phpstorm搬運工-構成的。 順便說一句,這並不回答我的問題,我不明白爲什麼沒有被Xdebug的容器內讀XDEBUG_CONFIG – sangio90