首页 > 解决方案 > 如何设置 xdebug / docker / drupal 堆栈?

问题描述

我的目标是能够调试一段棘手的 Drupal 8 代码。我对 docker 的经验非常有限(初级)。我有一个数据库 docker 容器正在运行,我像这样旋转:

docker run --name drupalMulti-database -p 3306:3306 -v `pwd`:/var/lib/mysql -d percona:latest

然后,我的 drupal 8 docker 容器像这样连接到上面的容器:

docker run -e XDEBUG_CONFIG="remote_host=10.1.2.74" --name drupalMulti -p 8484:80 -p 8453:443 --link drupalMulti-database:mysql -v `pwd`:/var/www/html/ -d gitlab.OUR-COMPANY-NAME.com:4999/dev/PATH-TO-OUR-DRUPAL-CONTAINER

我想知道如何配置 PhpStorm 或 VsCode 以与 xdebug 一起正常工作,这样我就可以调试我的 drupal 代码:设置断点、单步执行代码等?假设我无权修改现有的 docker 镜像,但我的 Drupal 镜像已经预装了 xdebug。

(运行 Drupal 8 / php 7.2 / mysql 5.7)

标签: dockerdrupalvisual-studio-codephpstormdrupal-8

解决方案


如果 docker 在本地运行,请尝试设置xdebug.remote_host为。host.docker.internal您还需要将项目的副本存储在本地,以便能够通过 PhpStorm 对其进行调试。请参阅https://www.jetbrains.com/help/phpstorm/configuring-xdebug.html#configuring-xdebug-dockerhttps://www.jetbrains.com/phpstorm/documentation/debugging/


推荐阅读